如何管理 Android 工具栏
How to manage Android toolbar
我正在开发一个应用程序,我将 android widget.toolbar 作为 supportActionBar,但我找不到任何关于如何管理其属性的信息。例如,我想在溢出菜单中修改和添加元素(我根本不知道名称是否正确,但我的意思是当您单击右上角的 3 点默认图标时出现的那个.我会 post 一张图片。)并为它们中的每一个设置一个监听器。
对于菜单,您必须遵循旧的实现方式。您在 res/menu/your_menu.xml 中添加一个项目,您指定一个操作并在 Activity 或 Fragment.
的 onOptionsItemSelected()
中管理该操作
看这个例子:
在activity中:
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
//Title and subtitle
toolbar.setTitle("MY toolbar");
toolbar.setSubtitle("Subtitle");
//Menu
toolbar.inflateMenu(R.menu.toolbar_menu);
toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
switch (menuItem.getItemId()){
case R.id.action_share:
Toast.makeText(ToolbarActivity.this,"Share",Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
});
在 XML 文件中:
像普通选项菜单一样创建 xml 文件:
toolbar_menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="example.gmariotti.it.test21.ToolbarActivity" >
<item android:id="@+id/action_search"
android:title="@string/action_search"
android:icon="@drawable/ic_search"
android:showAsAction="ifRoom" />
<item android:id="@+id/action_share"
android:title="@string/action_share"
android:icon="@drawable/ic_share"
android:showAsAction="ifRoom" />
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never" />
</menu>
我正在开发一个应用程序,我将 android widget.toolbar 作为 supportActionBar,但我找不到任何关于如何管理其属性的信息。例如,我想在溢出菜单中修改和添加元素(我根本不知道名称是否正确,但我的意思是当您单击右上角的 3 点默认图标时出现的那个.我会 post 一张图片。)并为它们中的每一个设置一个监听器。
对于菜单,您必须遵循旧的实现方式。您在 res/menu/your_menu.xml 中添加一个项目,您指定一个操作并在 Activity 或 Fragment.
的onOptionsItemSelected()
中管理该操作
看这个例子:
在activity中:
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
//Title and subtitle
toolbar.setTitle("MY toolbar");
toolbar.setSubtitle("Subtitle");
//Menu
toolbar.inflateMenu(R.menu.toolbar_menu);
toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
switch (menuItem.getItemId()){
case R.id.action_share:
Toast.makeText(ToolbarActivity.this,"Share",Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
});
在 XML 文件中:
像普通选项菜单一样创建 xml 文件:
toolbar_menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="example.gmariotti.it.test21.ToolbarActivity" >
<item android:id="@+id/action_search"
android:title="@string/action_search"
android:icon="@drawable/ic_search"
android:showAsAction="ifRoom" />
<item android:id="@+id/action_share"
android:title="@string/action_share"
android:icon="@drawable/ic_share"
android:showAsAction="ifRoom" />
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never" />
</menu>