无法解析符号R.menu和R.id.menu_settings

时间:2016-07-13 15:43:23

标签: android

我已经为这个问题奋斗了几个小时但我仍然无法解决这个问题。希望有人能帮助我弄清楚我的代码发生了什么。

Android Studio无法在我的代码中解析符号菜单 action_settings 。我试图多次清理和重建并使缓存/重启无效,但它无助于解决我的问题。

这是我的MainActivity.java:

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

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    int id = item.getItemId();

    if (id == **R.id.action_settings**) {
        return true;
    }
    return super.onOptionsItemSelected(item);
}

我的代码有问题吗?很抱歉,我还是Android工作室的新手,希望你们能原谅我。

1 个答案:

答案 0 :(得分:0)

您需要将菜单中的xml文件作为res下的菜单。在新的Android Studio活动中,它不会创建菜单文件夹,也不会为活动创建菜单。

添加菜单文件夹后,需要手动添加menu_main.xml文件。之后,您可以使用以下代码访问菜单。

<强>爪哇:

   @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.main_menu, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle item selection
        switch (item.getItemId()) {
            case R.id.logout:
                Intent intent_logout = new Intent(getApplicationContext(), LoginActivity.class);
                startActivity(intent_logout);
                return true;

            default:
                return super.onOptionsItemSelected(item);
        }
    }