2016-06-14 63 views
0

我開始一個新的活動從一個片段,像這樣:通過參考和方法調用預期的錯誤訪問Android中

@Override 
public void onClick(View v) { 
    startActivity(BarCodeActivity.newIntent(getActivity(), destinationID)); 
} 

這讓我沒有任何問題。

但是,當我在同一個片段進行不同的活動做同樣的後來,我得到的錯誤:方法調用預期:

public void onClick(View view){ 
    startActivity(TestPagerActivity().newIntent(getActivity(), customerObject.getId(), destinationID)); 
} 

我就改成:

startActivity(new TestPagerActivity().newIntent(getActivity(), customerObject.getId(), destinationID)); 

和錯誤將消失,但現在我通過實例引用獲取訪問靜態成員的警告。任何想法如何解決這個問題或發生了什麼?

+0

您有一個額外的對括號這是不必要的()。刪除它們。 – Vucko

回答

2

錯誤1:方法調用預期

不使用new關鍵字就像你正試圖在

TestPagerActivity().newIntent(getActivity()..... 

錯誤2做你不能創建一個實例:通過實例引用訪問靜態成員

靜態方法應該在沒有任何實例引用的情況下調用,只需調用Class的名稱即可。

解決方案:

更改爲

startActivity(TestPagerActivity.newIntent(getActivity(), customerObject.getId(), destinationID)); 
+0

謝謝,只是一個愚蠢的錯誤,我沒有抓住。 – Diego