我有一个活动,其顶部包含一个操作栏,底部有一个独立的工具栏。我想根据某个变量的值启用/禁用此工具栏中的项目。请注意,这是一个片段。
如果我有一个正常的操作栏菜单,我可以使用onPrepareOptionsMenu(Menu menu)
方法执行此操作。但是这个方法不是为工具栏调用的,也不能区分哪个工具栏,如果它会被调用。
如何准备工具栏及其菜单项?
这是我的工具栏xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/item_medizinische_daten"
android:title="@string/medizinische_daten"
app:showAsAction="always"></item>
</menu>
这是我的代码:
toolbarBottom = (Toolbar) getActivity().findViewById(R.id.toolbar_bottom);
toolbarBottom.inflateMenu(R.menu.menu_toolbar_medizinische_daten);
toolbarBottom.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.item_medizinische_daten:
Toast.makeText(getActivity(), "Medizinische Daten clicked", Toast.LENGTH_LONG).show();
break;
default:
}
return true;
}
});
答案 0 :(得分:2)
Toolbar
小部件有一个getMenu()
方法,您可以使用该方法检索您在其上充气的Menu
。然后,您可以使用该Menu
引用,并通过findItem()
或getItem()
查找其子项并进行更改。