2013-08-06 79 views
1

我正在使用AndEngine的Android應用程序。我嘗試以這種方式重新開始活動:重新啓動活動Android

private void restartActivity() { 
    startActivity(new Intent(this, TMXTiledMapExample.class)); 
    finish(); 
} 

此解決方案適用於大多數設備,但我意識到不是Nexus4。

事實上,我得到以下錯誤:

08-06 11:24:17.416: E/AndroidRuntime(6299): FATAL EXCEPTION: main 
08-06 11:24:17.416: E/AndroidRuntime(6299): java.lang.NullPointerException 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at org.andengine.ui.activity.BaseGameActivity.onResumeGame(BaseGameActivity.java:222) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at org.andengine.ui.activity.BaseGameActivity$4.run(BaseGameActivity.java:373) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at android.os.Handler.handleCallback(Handler.java:730) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at android.os.Handler.dispatchMessage(Handler.java:92) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at android.os.Looper.loop(Looper.java:137) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at android.app.ActivityThread.main(ActivityThread.java:5103) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at java.lang.reflect.Method.invokeNative(Native Method) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at java.lang.reflect.Method.invoke(Method.java:525) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 
08-06 11:24:17.416: E/AndroidRuntime(6299):  at dalvik.system.NativeStart.main(Native Method) 

回答

3

嘗試重新啓動這樣的活動:

Intent intent = getIntent(); 
finish(); 
startActivity(intent); 
+0

它很好用。一種解釋可能是?爲什麼在其他設備上,而不是在這個? –

+0

老實說,我不知道,我在工作時注意到的一件事情是,谷歌手機一般似乎有點(尤其是聯繫4)。很高興它的工作tho –

+0

好吧,謝謝你:)! –

0

如果這樣你就像關閉新的活動

startActivity (新的意圖(this,TMXTiledMapExample.class)); finish();

只是改變完成()第一

光潔度(); (新的Intent(this,TMXTiledMapExample.class));