2012-03-18 42 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; 
     } 
    } 
... 
}