继续拜读郭少的<<第一行代码>>,读到2.4.5活动被回收了怎么办?根据书上的代码敲上了,但是执行的时候,死活没有执行结果!郭少这一段讲的也比较粗略,木办法,再google一下,看一看别人文章,直接看到了一篇作者为泡在网上的日子写的<<Android开发之InstanceState详解>>,这才恍然大悟,豁然开朗,原来只有当某个活动被销毁时,才能触发onSaveInstanceState方法。只有在下面5种情况,才有可能触发onSaveInstanceState方法:
(1)、当用户按下HOME键时。(不一定行)
这是显而易见的,系统不知道你按下HOME后要运行多少其他的程序,自然也不知道activity A是否会被销毁,因此系统会调用onSaveInstanceState(),让用户有机会保存某些非永久性的数据。以下几种情况的分析都遵循该原则
(2)、长按HOME键,选择运行其他的程序时。(不一定行)
(3)、按下电源按键(关闭屏幕显示)时。(不知道是哪个键)
(4)、从activity A中启动一个新的activity时。(一般不行)
(5)、屏幕方向切换时,例如从竖屏切换到横屏时。(肯定行)
经过测试,只有第5种方法才肯定行,希望能对和我一样晕的同学理解这个方法有一点帮助!
原文地址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/0110/794.html
相关推荐
Android 中的 onSaveInstanceState 和 onRestoreInstanceState 是两个重要的生命周期方法,它们在 Activity 的生命周期中扮演着关键角色。了解这两个方法的触发时机对于开发者来说是非常重要的。 首先,我们需要...
No boilerplate code like onSaveInstanceState or onRestoreInstanceState any more. Getting started Just add the @AutoRestore annotation to your fields that need to be saved and restored in Activities, ...
`onSaveInstanceState()`方法就是用来解决这个问题的关键,它允许开发者在Activity或Fragment被系统销毁前保存其状态。 `onSaveInstanceState(Bundle outState)` 是一个生命周期方法,它会在Activity或Fragment进入...
在Android应用开发中,`onSaveInstanceState()`是一个关键的方法,用于在应用程序的生命周期中保存活动(Activity)的状态。当系统需要销毁一个活动,比如因为设备旋转、用户按下Home键或系统资源紧张时,系统会调用...
在Android应用开发中,`onSaveInstanceState`是一个关键的方法,用于在应用程序的生命周期中保存活动(Activity)的状态。当系统需要销毁一个活动时,比如屏幕旋转、用户按下Home键或者系统资源紧张,它会调用`...
在Android应用开发中,`onSaveInstanceState()`是一个关键的方法,用于在应用的Activity或Fragment生命周期中保存用户界面的状态。这个方法通常在系统即将销毁一个组件(例如:屏幕旋转、后台进程被清理等)时调用,...
4. Android Activity 生命周期中的 onSaveInstanceState 方法:onSaveInstanceState 方法用于保存 Activity 的状态,可以在这个方法中执行更新数据库的操作,但必须确认操作不会耗时太多。 5. 保存 UI 状态:在 ...
这份"Android应用源码之(横竖屏切换处理)"的资源,是一个非常适合毕业设计学习的示例,可以帮助开发者深入理解如何在Android应用中处理屏幕旋转的问题。 首先,Android系统默认支持横竖屏的自动切换,但有时为了...
下面将详细阐述`MapView`的使用方法。 1. **在布局文件中注册MapView** 在XML布局文件中,你需要添加一个`MapView`元素,并设置其宽度和高度。通常我们将其设为`match_parent`以占据整个父视图的空间。例如: ```...
- 对于游戏应用,如果需要在屏幕旋转或其他配置改变时保持状态,我们需要重写`onSaveInstanceState()`和`onRestoreInstanceState()`方法,将选中的RadioButton的ID存储和恢复。 综上所述,"android 猜猜我在想什么...
Android 编程实现状态保存有多种方法,包括使用 onSaveInstanceState 方法、使用 onPause 和 onResume 方法、使用生命周期方法等。掌握这些方法可以帮助我们更好地实现状态保存,提高应用程序的可靠性和用户体验。
在Android中,屏幕旋转的处理可以通过重写`onSaveInstanceState()`和`onRestoreInstanceState()`方法来保存和恢复状态,或者通过在AndroidManifest.xml中配置Activity的`configChanges`属性来处理。对于Fragment,还...
源码可能使用onSaveInstanceState和onRestoreInstanceState方法来保存和恢复状态。 下载的压缩包"localmusic-master"包含了整个项目的源代码结构,包括Android工程的各个组成部分,如Java源代码、资源文件、布局...
我的解决方法为 如果 activity 的销毁如果无法避免 那么在activity销毁之前调用 onSaveInstanceState 保存图片的路径 当activity重新创建的时候 会将 onSaveInstanceState 保存的文件传递给onCreate()当中 在...
### Android入门之认识Android Activity #### 一、活动(Activity)的概念 在Android开发中,**活动(Activity)**扮演着至关重要的角色。它相当于Windows系统中的窗口,主要职责是向用户提供可视化的用户界面,并接收...
Android的onSaveInstanceState()和onRestoreInstanceState()方法可以用来保存和恢复Activity的状态。 10. **测试与调试**:最后,游戏开发过程中,测试和调试是非常重要的环节。使用Android Studio的模拟器和真机...
这个"Android应用源码之仿ios的SwitchButton 非图片实现.rar"压缩包提供了一种纯代码实现的方法。接下来,我们将详细讨论这种实现方式以及涉及到的相关知识点。 1. **自定义View**: 在Android中,为了实现特定的...