2013-03-27 48 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之前,你表現