2012-03-18 37 views
0

問題描述:啓動mapActivity的錯誤?

所以我必須在包裝com.main一個主類,則Main.java類包含一個按鈕,

package com.main; 
public class Main extends Activity { 
... 
public void onClick(View v) { 
     switch(v.getId()) 
     { 
     case R.id.btnsuivant: 
      Intent intent = new Intent(this, Adddetail.class); 
      //intent.putExtra("Bonjour3","Bonjour4"); 
      this.startActivity(intent); 
      break; 
     } 
    } 
... 
} 

這個按鈕啓動一個新的mapActivity(Adddetail.java )。

package com.main; 
public class Adddetail extends MapActivity { 

... //error-free 

} 

我用:

<uses-library android:name="com.google.android.maps" /> 

<activity 
      android:name=".Adddetail" 
      android:label="Détails Publication" > 
     </activity> 

當運行我按一下按鈕,則停止執行,並顯示我下面的錯誤:

FATAL EXCEPTION: main 
java.lang.NoClassDefFoundError: com.main.Adddetail 
at com.main.Main.onClick(Main.java:486) 
at android.view.View.performClick(View.java:3511) 
at android.view.View$PerformClick.run(View.java:14105) 
at android.os.Handler.handleCallback(Handler.java:605) 
at android.os.Handler.dispatchMessage(Handler.java:92) 
at android.os.Looper.loop(Looper.java:137) 
at android.app.ActivityThread.main(ActivityThread.java:4424) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:511) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
at dalvik.system.NativeStart.main(Native Method) 

PS:當我用同樣的它在Main類中的mapActivity代碼。

非常感謝那些會幫助我的人,那些會盡力幫助我的人,以及那些只會幫助我的人。

+0

檢查我更新的答案。它會解決你的問題... – Prem 2012-03-20 06:45:07

+0

我的答案能解決你的問題嗎? – Prem 2012-03-21 03:28:22

回答

0

更新: -

我覺得我得到了你的錯誤。

Intent intent = new Intent(this.getApplicationContext(),MainActivity.class); 
startActivity(intent); 

您沒有提供的ApplicationContext這是必需的。

1

試試這個代碼:

package com.main; 
public class Main extends Activity { 
... 
public void onClick(View v) { 
     switch(v.getId()) 
     { 
     case R.id.btnsuivant: 
      Intent intent = new Intent(Main.this, Adddetail.class); 
      //intent.putExtra("Bonjour3","Bonjour4"); 
      startActivity(intent); 
      break; 
     } 
    } 
... 
}