Activity生命周期Word文档下载推荐.docx
- 文档编号:16349234
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:14
- 大小:185.10KB
Activity生命周期Word文档下载推荐.docx
《Activity生命周期Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Activity生命周期Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
5.
6.
onRestart();
7.
8.
onResume();
9.
10.
onPause();
11.
12.
onStop();
13.
14.
onDestroy();
15.
}
为了便于大家更好的理解,我简单的写了一个Demo,不明白Activity周期的朋友们,可以亲手实践一下,大家按照我的步骤来。
第一步:
新建一个Android工程,我这里命名为ActivityDemo.
第二步:
修改ActivityDemo.java(我这里重新写了以上的七种方法,主要用Log打印),代码如下:
1.package
com.tutor.activitydemo;
2.import
android.app.Activity;
3.import
android.os.Bundle;
4.import
android.util.Log;
5.public
ActivityDemo
private
static
final
String
TAG
=
"
ActivityDemo"
;
public
savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.e(TAG,
start
onCreate~~~"
);
16.
@Override
17.
onStart()
18.
super.onStart();
19.
onStart~~~"
20.
21.
22.
23.
onRestart()
24.
super.onRestart();
25.
onRestart~~~"
26.
27.
28.
29.
onResume()
30.
super.onResume();
31.
onResume~~~"
32.
33.
34.
35.
onPause()
36.
super.onPause();
37.
onPause~~~"
38.
39.
40.
41.
onStop()
42.
super.onStop();
43.
onStop~~~"
44.
45.
46.
47.
onDestroy()
48.
super.onDestroy();
49.
onDestroy~~~"
50.
51.
52.}
第三步:
运行上述工程,效果图如下(没什么特别的):
核心在Logcat视窗里,如果你还不会用Logcat你可以看一下我的这篇文章
Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)
,我们打开应用时先后执行了onCreate()->
onStart()->
onResume三个方法,看一下LogCat视窗如下:
BACK键:
当我们按BACK键时,我们这个应用程序将结束,这时候我们将先后调用onPause()->
onStop()->
onDestory()三个方法,如下图所示:
HOME键:
当我们打开应用程序时,比如浏览器,我正在浏览NBA新闻,看到一半时,我突然想听歌,这时候我们会选择按HOME键,然后去打开音乐应用程序,而当我们按HOME的时候,Activity先后执行了onPause()->
onStop()这两个方法,这时候应用程序并没有销毁。
如下图所示:
而当我们再次启动ActivityDemo应用程序时,则先后分别执行了onRestart()->
onResume()三个方法,如下图所示:
这里我们会引出一个问题,当我们按HOME键,然后再进入ActivityDemo应用时,我们的应用的状态应该是和按HOME键之前的状态是一样的,同样为了方便理解,在这里我将ActivityDemo的代码作一些修改,就是增加一个EditText。
第四步:
修改main.xml布局文件(增加了一个EditText),代码如下:
1.<
?
xml
version="
1.0"
encoding="
utf-8"
>
2.<
LinearLayout
xmlns:
android="
android:
orientation="
vertical"
layout_width="
fill_parent"
layout_height="
7.<
TextView
wrap_content"
text="
@string/hello"
/>
12.<
EditText
id="
@+id/editText"
16./>
17.<
/LinearLayout>
第五步:
然后其他不变,运行ActivityDemo程序,在EditText里输入如"
Frankie"
字符串(如下图:
)
这时候,大家可以按一下HOME键,然后再次启动ActivityDemo应用程序,这时候EditText里并没有我们输入的"
字样,如下图:
这显然不能称得一个合格的应用程序,所以我们需要在Activity几个方法里自己实现,如下第六步所示:
第六步修改ActivityDemo.java代码如下:
5.import
android.widget.EditText;
6.public
mEditText;
//定义一个String
类型用来存取我们EditText输入的值
mString;
mEditText
(EditText)findViewById(R.id.editText);
//当按HOME键时,然后再次启动应用时,我们要恢复先前状态
mEditText.setText(mString);
//当我们按HOME键时,我在onPause方法里,将输入的值赋给mString
mString
mEditText.getText().toString();
52.
53.
54.
55.
56.
57.
58.}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Activity 生命周期
![提示](https://static.bdocx.com/images/bang_tan.gif)