2013-03-27 71 views
0

你好,我有我的应用程序2个活动,我希望能够通过点击按钮时,我想我的代码,我得到了错误在它们之间进行切换:开始新的活动意图的错误

03-27 22:27:08.370: E/AndroidRuntime(9051): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.tdgame.dorbt12.MAIN }

我的代码是:

@Override 
public void onClick(View v) { 
    Intent open = new Intent("com.tdgame.dorbt12.MAIN"); 
    startActivity(open); 
} 

两个活动的名字是:主,必须

+0

您已经添加'com.price.dor.MAIN'到清单? – Simon 2013-03-27 20:35:08

+1

你也可以提供包含名称的活动包名称吗? – 2013-03-27 20:36:27

+0

是的,我把它添加到menifest – dorbt12 2013-03-27 20:37:35

回答

3

你有没有在你的清单中添加com.price.dor.MAIN

尝试将活动像这样的,你是基于意图过滤

<activity 
      android:name=".Main" > 
      <intent-filter> 
       <action android:name="com.tdgame.dorbt12.MAIN" /> //required 
       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 

因为你使用你的传球意图需要意图过滤动作标签标识活动。

Intent open = new Intent("com.tdgame.dorbt12.MAIN"); 
+0

谢谢你,我已经将它添加到清单,但我在包名中有错误。 – dorbt12 2013-03-27 20:45:20

+0

@ dorbt12我最初告诉你检查软件包名称。 – 2013-03-27 20:47:04

0

尝试以下操作:

Intent open = new Intent(currentActivitiy.this, destinationActivity.class); 
startActivity(open); 
+0

尽管你的回答是正确的,但它并没有为他的问题提供解决方案 – Pragnani 2013-03-27 20:42:58

+1

@Pragnani你是对的,但在这种情况下,最好使用普通意图而不是意向过滤器。 – NullPointer 2013-03-27 20:47:36

0

应该不是你的意图的语法是有点不同? 我平时写:

Intent open = new Intent(this, SecondActivity.class); 

其中SecondActivity是要运行活动的名称。

0

使用此

  Intent open = new Intent(Main.this, Must.class); 
      startActivity(open); 

添加

      <activity android:name=".Must" /> 

关闭application之前,你表现