通常只需通过实现onCreateOptionsMenu(Menu menu)
并在菜单的XML文件中添加android:showAsAction="ifRoom"
以获取所需项目,即可添加这些操作项目。
例如
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_save"
android:icon="@drawable/ic_menu_save"
android:title="@string/menu_save"
android:showAsAction="ifRoom|withText" />
</menu>
您是否认为这个事实?
编辑: 这是一个简单implemantation其前一阵子为我工作:
@Override
public boolean onCreateOptionsMenu(Menu menu){
super.onCreateOptionsMenu(menu);
createMenu(menu);
return true;
}
private void createMenu(Menu menu){
MenuItem mnu1 = menu.add(0, 0, 0, "Logout");
{
mnu1.setAlphabeticShortcut('a');
mnu1.setIcon(R.drawable.icon);
mnu1.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
}
}
是的,我在所有菜单项上都实现了onCreateOptionsMenu和showAsAction =“isRoom”,但除了应用程序的名称和图标外,操作栏中没有任何内容。 – olane 2012-01-27 15:33:14
@IneffablePigeon:这是一个示例项目:https://github.com/commonsguy/cw-android/tree/master/Menus/ActionBarBC – CommonsWare 2012-01-27 15:34:34
尝试“ifRoom”而不是“isRoom”。 – James 2012-01-27 21:21:25