2014-11-03 74 views
0

我試圖設置加入到我的第一個Android應用程序,但我有問題的意圖,代碼爲:構造函數的意圖是不確定的?

if (item.getItemId() == R.id.action_settings) { 
    Intent intent1 = new Intent(this, Settings.class); 
    startActivity(intent1);  
    return true; 
} 

和錯誤是:

The constructor Intent(NavigationDrawerFragment, Class<Settings>) is undefined 

誰能幫助嗎?

回答

1

此形式的Intent構造函數的第一個參數是Context。您的NavigationDrawerFragment不是Context,而是Activity。您可以在片段使用getActivity()一個Context

Intent intent1 = new Intent(getActivity(), Settings.class); 
+0

那的作品!謝謝 ! – SURViR 2014-11-03 17:38:10

0

變化getActivity()或YourActivity.this

+0

爲什麼你應該這樣做的解釋也會很好。 – 2014-11-03 17:39:44

1

嘗試使用:

Intent intent1 = new Intent(getActivity(), Settings.class); 
startActivity(intent1);  
return true; 

相反的:

Intent intent1 = new Intent(this, Settings.class); 
startActivity(intent1);  
return true;