当我按下主页按钮时,应用程序应该暂停,保存所有状态并正常工作。相反,我收到此错误:
java.lang.RuntimeException:无法暂停活动 {be.test.tester/be.test.tester.DataScreen}:java.lang.IllegalStateException:派生类未在 android.app.ActivityThread.performPauseActivity 调用 super.onSaveInstanceState() (ActivityThread.java:3641) 在 android.app.ActivityThread.performPauseActivity(ActivityThread.java:3598) 在 android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3574) 在 android.app.ActivityThread.access$2500(ActivityThread.java :136) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:2186) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:143)在 android.app.ActivityThread.main(ActivityThread.java:5068) 在 java.lang.reflect.Method.invokeNative(Native Method) 在 java.lang.reflect.Method.invoke(Method.java:521) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 在 dalvik.system.NativeStart .main(本机方法)
原因:java.lang.IllegalStateException:派生类没有在 android.view.View.dispatchSaveInstanceState(View.java:6087) 在 android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1207) 处调用 super.onSaveInstanceState() android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1207) 在 android.view.View.saveHierarchyState(View.java:6068) 在 com.android.internal.policy.impl.PhoneWindow.saveHierarchyState(PhoneWindow.java:1475)在 android.app.Activity.onSaveInstanceState(Activity.java:1106) 在 android.app.Activity.performSaveInstanceState(Activity.java:1056) 在 android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1289) 在 android.app。 ActivityThread.performPauseActivity(ActivityThread.java:3623) ... 12 更多
我的活动对触摸做出反应:
public class DataScreen extends Activity implements OnGestureListener{
我从意图中得到了一些额外的东西:
totUsage = Integer.parseInt(getIntent().getStringExtra("extraTotUsage"));
limit = Integer.parseInt(getIntent().getStringExtra("extraLimit"));
Bundle bundle = getIntent().getExtras();
mylist = (ArrayList<HashMap<String, String>>) bundle.get("extraMyList");
自定义视图正在显示数据(画布)。当您在屏幕上滚动时,自定义视图(set、get 方法)中的数据会发生变化并自行重绘。
我在这里并没有真正管理 onSaveInstanceState ,我真的不知道我是否必须这样做。
我的应用程序位于堆栈顶部,因为:
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
我不明白这个错误。