Android - 无法找到以下类

时间:2017-04-07 09:23:01

标签: android android-layout

我在我的Android应用程序中创建底部菜单

我在res/menu/option_menu.xml中的目录上创建了这样的

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:tools="http://schemas.android.com/tools"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

    <item android:id="@+id/post_offer"
        android:title="postoffer"
        android:icon="@drawable/ic_launcher"
        tools:ignore="HardcodedText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

    <item android:id="@+id/history"
        android:title="history"
        android:icon="@drawable/ic_launcher"
        tools:ignore="HardcodedText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

    <item android:id="@+id/inbox"
        android:title="inbox"
        android:icon="@drawable/ic_launcher"
        tools:ignore="HardcodedText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

    <item android:id="@+id/notifications"
        android:title="notifications"
        android:icon="@drawable/ic_launcher"
        tools:ignore="HardcodedText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

    <item android:id="@+id/people"
        android:title="people"
        android:icon="@drawable/ic_launcher"
        tools:ignore="HardcodedText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
</menu>

然后我将这个xml包含在activity_main.xml和java

<include
        layout="@menu/option_menu"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true" />

和这个java

@Override
    public boolean onCreateOptionsMenu(Menu menu){
        //MenuInflater inflater = getMenuInflater();
        //inflater.inflate(R.menu.option_menu, menu);
        //return true;
        getMenuInflater().inflate(R.menu.option_menu, menu);
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item){
        switch (item.getItemId()){
            case R.id.post_offer:
                startActivity(new Intent(this, RegisterActivity.class));
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }

    }

现在的问题是,当我尝试在设计模式下检查我的activity_main.xml时,它显示以下错误

缺少课程

找不到以下课程:

-Item(修复构建路径,编辑XML)

-Menu(修复构建路径,编辑XML)

修改

我正在使用

编译SDK版本:API 25:Android 7.1.1(Nougat)

构建工具版本:25.0.1

2 个答案:

答案 0 :(得分:2)

  

然后我将这个xml包含在activity_main.xml和java

你不应该这样做。只需按原样保留menu xml布局,然后像onCreateOptionsMenu()中那样对其进行充气。它应该工作。

答案 1 :(得分:0)

问题是23456945, Thorntons Chocolate Box, £10.00 Amount: 2 标签仅适用于布局XML(扩展<include>,但菜单肯定不会这样做)