无法识别菜单项ID

时间:2012-10-11 09:32:25

标签: android resources android-menu

菜单/ activity_main.xml中:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/menu_settings"
        android:title="@string/menu_settings"
        android:showAsAction="never" />
    <item android:id="@+id/menu_save_log"
        android:title="@string/menu_save_log"
        android:showAsAction="never" />
</menu>

MainActivity.java:

//@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
    case R.id.menu_settings:      // OK
        break;
    case R.id.menu_save_log:      // menu_save_log cannot be resolved or is not a field
        break;
    }

    return true;
}

为什么无法识别menu_save_log?

其他信息。 R.java:

public static final class menu {
    public static final int activity_main=0x7f070000;
}

R.java未更新。为什么呢?

2 个答案:

答案 0 :(得分:6)

不确定它可能是什么,但Eclipse / Android Studio很可能还没有识别出新ID。最好的办法是:

  • 确保您的菜单文件已保存;
  • 尝试重建项目;

在Eclipse中:

project --> clean...

答案 1 :(得分:2)

您似乎需要重建项目。

转到eclipse中的Project选项卡并清理项目。

希望,这会对你有帮助。