我有一个小菜单,上面有一个“关于”的按钮。当我按下它时,应用程序强制关闭。 logcat说没有找到处理意图的活动,但我不确定为什么。它在清单中声明如下
<activity
android:name=".About"
android:label="@string/app_name" >
<intent-filter>
<action android:name="com.androidsleepmachine.gamble.About" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
意图从代码开始
case R.id.About:
Intent i = new Intent("com.androidsleepmachine.gamble.About");
startActivity(i);
break;
Logcat文件
05-08 23:13:19.258:E / AndroidRuntime(15746):致命异常:主要 05-08 23:13:19.258:E / AndroidRuntime(15746):android.content.ActivityNotFoundException:找不到处理Intent的活动{act = com.androidsleepmachine.gamble.About} 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1545) 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Instrumentation.execStartActivity(Instrumentation.java:1416) 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Activity.startActivityForResult(Activity.java:3389) 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Activity.startActivityForResult(Activity.java:3350) 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Activity.startActivity(Activity.java:3562) 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Activity.startActivity(Activity.java:3528) 05-08 23:13:19.258:E / AndroidRuntime(15746):at com.androidsleepmachine.gamble.Home.onOptionsItemSelected(Home.java:83) 05-08 23:13:19.258:E / AndroidRuntime(15746):在android.app.Activity.onMenuItemSelected(Activity.java:2566) 05-08 23:13:19.258:E / AndroidRuntime(15746):at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:978) 05-08 23:13:19.258:E / AndroidRuntime(15746):at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:735) 05-08 23:13:19.258:E / AndroidRuntime(15746):at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:149) 05-08 23:13:19.258:E / AndroidRuntime(15746):at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:874) 05-08 23:13:19.258:E / AndroidRuntime(15746):at com.android.internal.view.menu.ListMenuPresenter.onItemClick(ListMenuPresenter.java:166)
答案 0 :(得分:1)
试试这个,
Intent i = new Intent(this,About.class);
// you may need to end this current activity if you dont want to use it anymore, just add `flags` to the intent
startActivity(i);
在您的联系人android:name=
同时点击control
和space
并从那里选择您的班级,以避免任何有关指向您班级的问题。
答案 1 :(得分:0)
更改名称。
<activity
android:name="com.androidsleepmachine.gamble.About"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
答案 2 :(得分:0)
日志清楚地显示了问题。
您正试图启动名为Activity
的{{1}}
com.AndroidSleepSounds.gamble.About
但是,它不在Manifest中。
com.AndroidSleepSounds.gamble.About
这是不同的班级名称。将其更改为
android:name="com.androidsleepmachine.gamble.About"