早教吧 育儿知识 作业答案 考试题库 百科 知识分享

java.lang.NullPointerExceptionatandroid.app.Activity.startActivityForResult(Activity.java:2817)我自定义一个Btn控件,在第一个界面(1)通过Intent点击Btn跳转到另一界面(2),同时(2)也实例化了Btn,点击Btn在跳转

题目详情
java.lang.NullPointerException at android.app.Activity.startActivityForResult(Activity.java:2817)
我自定义一个Btn控件,在第一个界面(1)通过Intent点击Btn跳转到另一界面(2),同时(2)也实例化了Btn,点击Btn在跳转界面(3),出错:------------求指导!
05-02 03:54:05.533:E/AndroidRuntime(4438):FATAL EXCEPTION:main
05-02 03:54:05.533:E/AndroidRuntime(4438):java.lang.NullPointerException
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.app.Activity.startActivityForResult(Activity.java:2817)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.app.Activity.startActivity(Activity.java:2923)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at com.example.show.AnimButtonsActivity$2.onButtonClick(AnimButtonsActivity.java:71)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at com.example.show.AnimButtons$1.onClick(AnimButtons.java:188)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.view.View.performClick(View.java:2408)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.view.View$PerformClick.run(View.java:8816)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.os.Handler.handleCallback(Handler.java:587)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.os.Handler.dispatchMessage(Handler.java:92)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.os.Looper.loop(Looper.java:123)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at android.app.ActivityThread.main(ActivityThread.java:4627)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at java.lang.reflect.Method.invokeNative(Native Method)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at java.lang.reflect.Method.invoke(Method.java:521)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
05-02 03:54:05.533:E/AndroidRuntime(4438):\x05at dalvik.system.NativeStart.main(Native Method)
跳转方法.
if(id==0){
\x05\x05\x05\x05\x05\x05\x05Intent intent_0 = new Intent(con,ListView_0.class);
\x05\x05\x05\x05\x05\x05\x05startActivity(intent_0);
\x05\x05\x05\x05\x05\x05}
\x05\x05\x05\x05\x05\x05else if(id==1){
\x05\x05\x05\x05\x05\x05\x05Intent intent_1 = new Intent(con,ListView_1.class);
\x05\x05\x05\x05\x05\x05\x05startActivity(intent_1);
\x05\x05\x05\x05\x05\x05}
\x05\x05\x05\x05\x05\x05else if(id==2){
\x05\x05\x05\x05\x05\x05\x05Intent intent_2 = new Intent(con,ListView_2.class);
\x05\x05\x05\x05\x05\x05\x05startActivity(intent_2);
\x05\x05\x05\x05\x05\x05}
\x05\x05\x05\x05\x05\x05else if(id==3){
\x05\x05\x05\x05\x05\x05\x05Intent intent_3 = new Intent(con,ListView_3.class);
\x05\x05\x05\x05\x05\x05\x05startActivity(intent_3);
\x05\x05\x05\x05\x05\x05}



































▼优质解答
答案和解析
在onCreate的第一行加一个断点 看看执行到哪里报错的 提示是空指针的错误
有可能你还没给btn赋值就进行了调用
看看是不是先btn.setOnClickListener了以后才findViewById
startActivity前给intent设置一个flag
intent.setFlag(INTENT_FLAG_ACTIVITY_NEW TASK);
好像是这么写 要不也就是类似的