我有一个非常简单的代码,但即使经过长时间的谷歌搜索也无法解决问题。我想在我的 ActionBar 中添加一些 Action Items,但是每当我运行应用程序时,我看到的只是一个带有应用程序徽标和标题的 ActionBar,但没有行动项目.
如果你能帮助我,那就太好了,可能我只是错过了最明显的事情;)
这就是我的 ActionBarActivity 中的方法:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu items for use in the action bar
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_activity_actions, menu);
return super.onCreateOptionsMenu(menu);
}
这是 ActionBar 的相关 .xml 文件(名为 main_activity_actions.xml):
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/action_search"
android:icon="@drawable/ic_action_search"
android:title="@string/action_search"
android:showAsAction="always" />
<item android:id="@+id/action_compose"
android:icon="@drawable/ic_action_compose"
android:title="@string/action_compose"
android:showAsAction="always"/>
</menu>
这是因为,如果您使用支持 AppCompat ActionBar 库和 ActionBarActivity,您应该以不同于在 ActioBarSherlock 或默认 ActionBar 中创建 XML 菜单的标准方式来创建菜单。
所以试试这个代码:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_search"
android:icon="@drawable/ic_action_search"
android:title="@string/action_search"
app:showAsAction="always" />
<item android:id="@+id/action_compose"
android:icon="@drawable/ic_action_compose"
android:title="@string/action_compose"
app:showAsAction="always"/>
</menu>
并报告是否有效。
注意:检查额外的前缀xmlns:app
应该使用哪个来代替!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)