Android: эмулятор не открывает меню в приложении - PullRequest
0 голосов
/ 27 марта 2012

У меня довольно странная проблема, когда меню для работы полностью работает на реальном устройстве, но не на эмуляторе.

Я попытался запустить один из моих старых проектов в эмуляторе, который я помню,меню работает, и это тоже не удалось.Я полагаю, какое-то обновление вызвало это?

Код прост ...

@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

На самом деле это происходит не только в моих приложениях, но и на главном экране.

Есть идеи для решений?

1 Ответ

1 голос
/ 27 марта 2012

Трудно найти ошибку в вашем коде.Попробуйте это. Создайте одну папку в именованном меню 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;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...