我无法从xml中扩展选项菜单。这是我的代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
当我按下模拟器上的菜单按钮时它运行正常,但是当我在运行ics的实际设备上运行它时没有菜单栏。
答案 0 :(得分:0)
菜单按钮已从运行Android 3.0及更高版本的设备中删除,现在被视为“已弃用”。关于为什么,如何使用新的ActionBar以及如何保留对旧应用程序的遗留支持,有a nice Blog-post:
如果您的应用在没有专用菜单按钮的设备上运行,则 system决定是否将操作溢出添加到导航 根据您在
<uses-sdk>
声明支持的API级别来设置栏 清单元素。逻辑归结为:
- 如果您将
minSdkVersion
或targetSdkVersion
设置为11或更高,系统将不会添加旧版溢出按钮。- 否则,系统将在Android 3.0或更高版本上运行时添加旧版溢出按钮。
- 唯一的例外是,如果将
minSdkVersion
设置为10或更低,请将targetSdkVersion
设置为11,12或13,并且不要使用ActionBar, 系统将在运行您的应用程序时添加旧版溢出按钮 在Android 4.0或更高版本的手机上。
如果您正在开始Android开发,或者您现在正在创建一个新应用程序,请不要使用此类菜单,而应使用ActionBar。
"Support Library"中提供了帮助程序,以实现向后兼容性:
图书馆不支持。但是,在创建时 在您的选项菜单中,您可以声明应添加哪些项目 操作栏可用(在Android 3.0或更高版本上)。