无法解析符号' menu_main'

时间:2017-03-15 05:57:58

标签: android xml android-layout

我在menu中创建了res文件夹。在menu文件夹中,我创建了一个 menu_main.xml 文件,其中包含:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
    <item android:id="@+id/action_settings" android:title="action_settings"
            android:orderInCategory="100" android:showAsAction="never" />
</menu>

因为我将此 xml MainActivity内的代码结合使用。它给我一个错误#34;无法解析menu_main的符号。以下是摘录:

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

我无法理解为什么即使在指定文件夹中创建xml之后也会发生这种情况。也许我错过了一些愚蠢的东西,但我无法掌握它。任何帮助将不胜感激。

4 个答案:

答案 0 :(得分:2)

为什么使用android:showAsAction="never"

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity"><itemandroid:id="@+id/action_settings" android:title="action_settings"
        android:orderInCategory="100" android:showAsAction="always" ></menu>

试试这段代码

答案 1 :(得分:2)

转到Build>Clean项目,清理并重建项目。 转到File>Invalidate Caches/Restart

答案 2 :(得分:1)

如果IDE存储了大量缓存,那么IDE无法确定您需要CleanRebuild项目的时间。如果IDE包含大量缓存内存,则必须清理该内存,然后重新启动它。

那时你必须去File and Select Invalidate Caches and Restart

答案 3 :(得分:1)

android:showAsAction="always"你走了。!尝试关注正确的Android开发人员文档Menus 而且这个教程也会对你有所帮助。 Menu Example最后转到文件点击Invalidate Caches并重启。希望这会对你有所帮助。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
    <item android:id="@+id/action_settings" android:title="action_settings"
            android:orderInCategory="100" android:showAsAction="always" />
</menu>