Android中会默认添加Actionbar,可以在ActionBar中添加我们所需要的菜单。
在res / menu / 目录下存放的是我们的菜单文件,可以对每一个Activity需要显示的菜单添加一个xml文件。
例如在MainActivity中添加设置菜单:
1.首先在res / menu / 文件下添加菜单main.xml:
<item
android:id="@+id/menu_settings"
android:icon="@drawable/ic_settings"
android:showAsAction="withText"
android:title="设置"/>
其中的属性showAsAction表示该菜单显示的效果:ifRoom(如果空间足够则显示)、never(从不显示,在单击菜单按钮则显示)、always(总是显示)、withText(将icon和文字一并显示)
2.在MainActivity中设置显示menu:
重写onCreateOptionMenu方法,使用MenuInflater来显示我们的Menu:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = new MenuInflater(MainActivity.this);
//MenuInflater inflater = getMenuInflater();//另一种方法
inflater.inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu);
}
3.菜单的点击事件:重写onMenuItemSelected(int featureId, MenuItem item),根据item的id判断不同的菜单,然后在设置他们的点击事件
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
if(item.getItemId() == R.id.menu_settings){
Toast.makeText(MainActivity.this, "Settings", Toast.LENGTH_SHORT).show();
}
return super.onMenuItemSelected(featureId, item);
}