Android Activity必知必会

2017-02-23  本文已影响0人  董江鹏

一、概要

1. 建立Activity:

1.1 继承Activity类并重写重要函数

创建相关布局文件
重写onCreate()onPause()等需要的函数,加载布局

1.2 注册

AndroidManifest.xml文件中注册相关Activity
<activity>标签中添加相应Activity的需要的<intent-filter>内容

2. 启动Activity:

2.1 启动方式

显示Intent:通过指定目标活动名称来启动
隐式Intent:通过指定actioncategory来寻找合适的活动来启动

2.2 数据传递

向下一个活动传递数据:Intent数据存取的一些操作
返回数据给上一个活动:通过startActivityForResult()方法启动下一个活动,并重写onActivityResult()处理返回数据

2.3 启动模式
2.4 生命周期
2.4.1 管理Activity生命周期

完整生存期:在onCreate()onDestory()之间的各种操作
可见生存期:onStart()->onResume()->onPause()->onStop()->onRestart()该活动可以被用户看见
前台生存期:onResume()->onPause()该活动在这期间可以和用户进行交互

2.4.2 存储Activity的状态:通过onSaveInstanceState()方法存储Activity的状态,保障活动被回收后能回复数据
2.4.3 处理设定的变更:横竖屏切换的生命周期的变化

3. 关闭Activity:

可以通过finish()方法关闭此Activity,或是通过finishActivity()关闭之前启动的某个Activity

二、重点

1. Intent的使用

1.1显式Intent启动的传值与取值
1.2隐式Intent启动的传值与取值

与显示的大致差不多,只不过是没有指定具体的下一个activity,在启动的时候是通过相应的action,一般常在找联系人、找图片......中用到

2. 理解生命周期

2.1 生命周期的进行路径和前后联系

说再多不如上图:

2.2 关于存储activity状态

通过重写onSaveInstanceState()方法,将数据以key-value的形式暂存到saveInstanceState中,当activity需要重建的时候可以在onCreate()或是onRestoreInstanceState()中恢复。
上图:

activity_lifecycle.png
2.3 关于状态变化的处理

横竖屏切换时activity生命周期的变化
均会经历有onCreate()onDestory()完整的生命周期

3. 关注启动方式和Task

一个Task是一系列Activity的集合,这个集合是以堆栈的形式来组织的,遵循后进先出的原则。

3.1 启动模式与Flag以及返回栈

启动模式在AndroidManifest.xml文件中更改
也可以通过在Intent里使用addFlag()方法,但对于AndroidManifest.xml里已经定义了的(非standard模式)不生效。

3.2 关于taskAffinity
上一篇下一篇

猜你喜欢

热点阅读