错误:未找到类android.view.menu(上道)(Error: Didn't fin

2019-09-27 17:32发布

我试图创建一个单一的menu项。 当我运行我的应用程序,它崩溃权当它启动时,我得到了以下错误的logcat:

E / AndroidRuntime(1507):抛出java.lang.ClassNotFoundException:由造成没有找到路径类 “android.view.menu”:/data/app/com.thing.appname-2.apk

这里是我的XML:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:id="@+id/addEventMenu"
              android:title="Add Event"
              android:icon="@drawable/addeventimage"/>
    </menu>

以下是onCreate方法之外(不知道这是否有差别):

public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.addEventMenu:
                //do something here when menu button is pressed
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        menu.add(R.id.addEventMenu);
        return super.onCreateOptionsMenu(menu);
    }

我也试过这个,我也得到了同样的错误:

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

Answer 1:

我碰到了同样的问题,当我开始Android的发展前...

有一个在你的项目资源下的“菜单”不同的XML文件-这是从布局XML文件太大的不同 。 把<menu><item> (S)中的“RES /菜单/ main.xml中”。

此外,在Android Studio有告诉你要导入的东西一种奇怪的方式......请确保您使用

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

并点击红色通知导入。



Answer 2:

我碰到了,当我的布局文件(activity_main.xml中)有错“风格”的项目同样的问题。

从XML文件中删除了错误的项目解决了这个问题。



Answer 3:

我遇到了类似的问题,应用程序崩溃,我得到了运行时错误的原因如下:

抛出java.lang.ClassNotFoundException:找不到类“android.view.style”

从布局文件(activity_main.xml中)卸下“风格”项目解决了这个问题。 我认为,如果一直需要的风格项目,适当进口会解决了这个问题。



Answer 4:

你可能会使用ActionbarSherlock。 如果是这样的情况下可以尝试进口

import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;

而不是android.view.menu



文章来源: Error: Didn't find class android.view.menu (on path)