[英]navigation MenuItem in toolbar doesn't trigger onOptionsItemSelected
[英]Clicking app icon doesn't trigger onOptionsItemSelected()
我目前正在開發一款Android應用。 我想使用操作欄中的應用程序圖標導航到“主頁”活動。 我在這個頁面上看到,所有需要做的就是添加一個onOptionsItemSelected
並查找id android.R.id.home
。
這是我在我的活動中實現的代碼,我想按下應用程序圖標返回HomeActivity
。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()) {
case android.R.id.home:
Intent intent = new Intent(this, HomeActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
然而,沒有任何反應。 調試時,我可以看到單擊圖標根本不會觸發onOptionsItemSelected()
。 我必須在某個地方用圖標做點什么嗎? 截至目前,它都是默認的,就在AndroidManifest.xml
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
對於目標API級別14以上的軟件包,您需要通過調用setHomeButtonEnabled()
來啟用主頁按鈕
在onCreate中,添加以下內容:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
getActionBar().setHomeButtonEnabled(true);
}
如果您使用Android新支持 - 操作欄( AppCompat ),則需要進行兩次調用。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
getActionBar().setHomeButtonEnabled(true);
}
getSupportActionBar().setHomeButtonEnabled(true);
我不知道我們是否有同樣的問題。
但是,我是在解決這個問題,現在已經解決了..
你加了嗎?
case android.R.id.home:
Intent intent = new Intent(this, HomeActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
return true;
在HomeActivity? 這是假的..
你應該把這些代碼放在你的secondActivity上..因為你的homeActivity上的home鍵,而不是HomeActivity
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
true;
希望這能幫助你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.