【发布时间】:2016-12-15 13:57:10
【问题描述】:
每当我将 Nexus 从纵向旋转到横向或从横向旋转到纵向时,我的应用程序都会崩溃。它会生成下面的异常报告,我不明白。
我基本上按照它说的做了,找到了我的主要活动onDestroy函数并添加了super.onDestroy,这让问题消失了。
但是,为什么会发生这种情况?为什么 onDestroy 会因为我旋转平板电脑而发挥作用?
02-18 00:43:28.504 28259-28259/com.mpr.myfirstapp E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.mpr.myfirstapp, PID: 28259
android.util.SuperNotCalledException: Activity {com.mpr.myfirstapp/com.mpr.myfirstapp.MainActivity} did not call through to super.onDestroy()
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3660)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3689)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3889)
at android.app.ActivityThread.access$900(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1284)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5223)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
【问题讨论】:
-
在您的 onDestroy() 方法中添加 super.onDestroy()。
-
活动在设备旋转时被销毁并重新创建;阅读活动生命周期。确保在任何时候重写 Activity 类中的方法时,始终调用超级方法。
标签: android