“找不到处理Intent的活动”但是Intent过滤器设置

时间:2015-09-02 20:19:36

标签: android android-intent

我有一个斜杠屏幕启动一个菜单,而我的菜单中我试图打开一个新的活动,但是当我这样做并且应用程序崩溃时我收到错误。

我的清单

<activity
        android:name=".menu"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MENU" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.HOME" />
        </intent-filter>
    </activity>

    <activity
        android:name=".settings"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.SETTINGS" />
        </intent-filter>
    </activity>

然后我要求我的菜单代码:

 Intent settingsIntent = new Intent("android.intent.action.SETTINGS");
 startActivity(settingsIntent);

我尝试更改意图名称,但它没有帮助。

日志上限:

E/AndroidRuntime﹕ FATAL EXCEPTION: Thread-1288
    android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.SETTINGS }
            at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1632)
            at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
            at android.app.Activity.startActivityForResult(Activity.java:3390)
            at android.app.Activity.startActivityForResult(Activity.java:3351)
            at android.app.Activity.startActivity(Activity.java:3587)
            at android.app.Activity.startActivity(Activity.java:3555)
            at com.learningapp.splash$1.run(menu.java:30)

编辑: 直接调用该类:

startActivity(new Intent(currentClass.this, settings.class));

2 个答案:

答案 0 :(得分:1)

如果您只想开始设置活动,则应使用此

startActivity(new Intent(YourCurrentActivity.this, settings.class));

答案 1 :(得分:-1)

您的活动可能未被调用&#39;设置&#39;。

在AndroidManifest.xml中,您应该在name属性上放置确切的名称(包名称可以用点来省略以使用应用程序包)