精品文档黑马程序员安卓教程:Activity的生命周期onCreate和onDestroy

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Activity生命周期之创建和销毁
一个Activity通常是一个单独的屏幕即一个手机页面,Activity生命周期是指Activity从创建到销毁的过程。

在Activity的生命周期中必须会执行一些方法函数,这些方法就是生命周期的回调。

例如:人的生命周期就是其从出生到死亡的过程,在这个生命周期中必定会执行“出生函数“和“死亡函数”。

下面我们通过一个DEMO来理解Activity的生命周期。

1.新建工程
【File】→【new】→【Android Application Project】命名为:06_activity生命周期
2.生命周期的创建
新建工程“06_activity生命周期”的主Activity中,重写了onCreate()方法,代码如例1-1所示:

图1-1所示
由图1-1可知:onCreate方法在Activity启动时调用。

在这个方法中我们需要做一系列的初始化操作,例如调用setContentView方法加载该Activity UI的根视图,调用findViewById来查找相关控件等。

清空logcat,运行程序,此时logcat输出如图1-2所示信息:
图1-2所示
从图1-2可知:在创建Activity时onCreate方法被调用。

事实上,onCreate方法是Activity生命周期的开始。

毋庸置疑,有开始就会有结束。

那么,Activity生命周期的结束是什么概念呢?在其生命周期结束时会回调什么生命函数呢?
3.生命周期的销毁
Activity生命周期的结束即系统将释放该Activity所占用的内存资源,当一个Activity销毁时会调用onDestroy方法,代码如例1-2:
图1-3所示
从图1-3可知:当Activity销毁时会调用该方法来进行一些清理操作。

该方法会在以下两种情景下调用,第一:执行该Activity的finish方法;第二:系统自动临时销毁该Activity用来节约内存资源。

下面我们来模拟销毁Activity的过程。

清空logcat,运行程序,当程序启动之后点击模拟器上的“back”键,过程如图1-4所示:
点击 BACK键
图1-4所示
此时logcat打印如图1-5所示的信息:
图1-5所示
从图1-5可知:启动工程,Activity首先会被创建,当点击“BACk”键时,该Activity就会调用onDestroy 来销毁这个Activity。

在onDestroy方法中,我们常常可以做一些清理操作,应用场景如下:在“05_短信发送器”,假设在编辑短信中,我们不小心误按了“BACK”键,此时,当前Activity就会被销毁,编写的短信内容也会被清空。

为此,我们可以在回调onDestroy方法时将该短信的编辑内容保存到本地,下次编写时先从本地读取保存的短信。

保存短信代码如例1-3:
例1-3先读取编辑框的内容,然后将短信保存在SharedPreferences中。

因此,在下一次编写短信时应先从该SharedPreferences中读取待编辑的短信。

代码如例1-4所示:
例1-4
When you are old and grey and full of sleep,
And nodding by the fire, take down this book,
And slowly read, and dream of the soft look
Your eyes had once, and of their shadows deep;
How many loved your moments of glad grace,
And loved your beauty with love false or true,
But one man loved the pilgrim soul in you,
And loved the sorrows of your changing face;
And bending down beside the glowing bars,
Murmur, a little sadly, how love fled
And paced upon the mountains overhead
And hid his face amid a crowd of stars.。

相关文档
最新文档