2014-07-24 32 views
0

您好所有,景觀崩潰暫停時和肖像犯規

我試着在網上找到答案,對於這個問題,但我不能找到一種方法來解決我的問題......

因此,也許你們中的一些人們知道我能做些什麼來解決它。所以我有一個遊戲(表面視圖和線程,繪製cavnas和所有那些gamy的東西),一切工作正常在肖像模式,但我希望我的遊戲在橫向模式中播放,所以我已經改變了模式,像這樣的Android清單:

android:screenOrientation="landscape"

工作正常,一切都是一樣的,只不過當我想要關閉活動(調用的onPause方法)。當我收到應用程序需要強制關閉的錯誤時。

現在有些人加入

android:configChanges="orientation|screenSize|keyboard|keyboardHidden|navigation" 

爲了自己的清單文件解決了他們的問題,但這並不能爲我做的伎倆,我仍然不斷收到NullPointerException

這裏是logcat的:

07-24 21:27:12.160: E/AndroidRuntime(5272): FATAL EXCEPTION: main 
07-24 21:27:12.160: E/AndroidRuntime(5272): java.lang.RuntimeException: Unable to pause activity {com.example.fishtruck/com.example.fishtruck.Start}: java.lang.NullPointerException 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2706) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2662) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:2640) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread.access$800(ActivityThread.java:123) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1154) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.os.Handler.dispatchMessage(Handler.java:99) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.os.Looper.loop(Looper.java:137) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread.main(ActivityThread.java:4424) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at java.lang.reflect.Method.invokeNative(Native Method) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at java.lang.reflect.Method.invoke(Method.java:511) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:825) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:592) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at dalvik.system.NativeStart.main(Native Method) 
07-24 21:27:12.160: E/AndroidRuntime(5272): Caused by: java.lang.NullPointerException 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at com.example.fishtruck.Start.onPause(Start.java:113) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.Activity.performPause(Activity.java:4563) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1197) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2693) 
07-24 21:27:12.160: E/AndroidRuntime(5272):  ... 12 more 

和(不知道是否相關,但到底什麼)這是我如何調用方法:

view.stopThread(); 
this.finish(); //this is called in the activity and view = surfaceView 

而且stopThread()方法被稱爲像所以:

if(thread!=null){ 
      thread.interrupt(); 
      thread.setRunning(false); 
      isStopped = true; 
      thread = null; 
     } 
+0

你在Start.java的第113行有什麼對象?您擁有的對象沒有正確啓動(它爲空),從而導致應用程序崩潰。你可能試圖對一個不存在的對象做些什麼。我猜測它是(如果你發佈你的整個onPause)爲空的對象「視圖」。 – Zezeq

+0

哦,謝謝隊友,它實際上使認識 – Pavle37

+0

我在那裏有反對物。如果你想要帖子的答案,我會接受。 – Pavle37

回答

0

你有什麼對象在S行113 tart.java?您擁有的對象沒有正確啓動(它爲空),從而導致應用程序崩潰。