[英]How can I change menu items in top bar in different fragments?
我使用 MaterialToolBar 來顯示 TopAppBar。 我有三個片段,在顯示每個片段時,我想在頂部菜單中顯示不同的項目。 怎么做?
試試這個代碼
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
android:layout_width="0dp"
android:layout_height="?attr/actionBarSize"
app:navigationIcon="@drawable/ic_menu"
app:menu="@menu/main_menu"/>
然后這個
toolbar.setOnMenuItemClickListener {
// .. DO SOMETHING HERE
false
}
而不是toolbar.setOnMenuItemClickListener
你需要使用這個:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.game_menu, menu);
return true;
}
有關更多信息,請查看此答案。
每次需要更改菜單時都需要擴充不同菜單資源的快速概覽。 您還需要為需要執行的自定義操作設置OnOptionsItemSelected
。
您可能還需要為片段setHasOptionsMenu(true);
添加它setHasOptionsMenu(true);
在您的 onCreate 方法中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.