【发布时间】:2013-03-16 11:28:25
【问题描述】:
你猜我有问题...
我的 Islem.java 类中有这段代码
public void myFinish(){
Intent i = new Intent();
i.setClassName(this, SaveScore.class);
startActivity(i);
}
如果我在onCreate 方法中写myFinish(); 它工作正常
然而,在 timer.java 类中
public void onFinish() {
Islem is = new Islem();
is.myFinish();
}
当我使用这个代码时出现错误! :)
奇怪的是当我把myFinish代码改成
public void myFinish(){
/* Intent i = new Intent();
i.setClassName(this, SaveScore.class);
startActivity(i);*/
time.setText("Finish!");
}
即使我在 timer.jawa 类中使用它,它也能正常工作!
LogCat 03-16 14:27:14.370:E/AndroidRuntime(29940):致命异常:主要 03-16 14:27:14.370: E/AndroidRuntime(29940): java.lang.NullPointerException 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 android.app.Activity.startActivityForResult(Activity.java:2833) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 android.app.Activity.startActivity(Activity.java:2959) 03-16 14:27:14.370: E/AndroidRuntime(29940): at com.edusoftgame.kidsmath.Islem.myFinish(Islem.java:323) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 com.edusoftgame.kidsmath.Timer.onFinish(Timer.java:19) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 android.os.CountDownTimer$1.handleMessage(CountDownTimer.java:118) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 android.os.Handler.dispatchMessage(Handler.java:99) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 android.os.Looper.loop(Looper.java:130) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 android.app.ActivityThread.main(ActivityThread.java:3693) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 java.lang.reflect.Method.invoke(Method.java:507) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907) 03-16 14:27:14.370: E/AndroidRuntime(29940): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665) 03-16 14:27:14.370: E/AndroidRuntime(29940): at dalvik.system.NativeStart.main(Native Method)
有什么想法吗?谢谢...
【问题讨论】:
标签: android android-intent countdowntimer