我有一个相当奇怪的问题,即活动菜单在真实设备上完全正常,但在模拟器上却没有。
我尝试在模拟器中启动我的一个旧项目,我记得菜单工作,但也失败了。我想某种更新导致了这个?
代码很简单......
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuItem prefs = menu.add("Preferences");
prefs.setIcon(R.drawable.gear_01);
return true;
}
LogCat显示最终由以下原因引起的一系列异常:
E/AndroidRuntime(6714): Caused by: java.io.FileNotFoundException: res/drawable-hdpi/ic_menu_more.png
这实际上不仅发生在我的应用程序中,而且发生在主屏幕上。
任何解决方案的想法?
答案 0 :(得分:1)
很难在代码中找到错误。 所以试试这个。在名为menu的res中创建一个文件夹。将此xml放在此文件夹中
确保您的可绘制名称中有图标ic_new_game,ic_help
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/new_game"
android:icon="@drawable/ic_new_game"
android:title="@string/new_game"
android:showAsAction="ifRoom"/>
<item android:id="@+id/help"
android:icon="@drawable/ic_help"
android:title="@string/help" />
</menu>
像你一样覆盖这个方法
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.game_menu, menu);
return true;
}