Android开发学习笔记-5 Activity-4 Activity生命周期
来源:互联网 发布:papi酱 知乎 编辑:程序博客网 时间:2024/05/17 18:28
Android开发学习笔记-5 Activity-4 Activity生命周期
1.Activity中7个生命周期方法:
public class Activity extends ApplicationContext {
protected void onCreate(Bundle savedInstanceState); //初始化设置 布局等内容 ,第一次执行Activity
protected void onStart(); //当Activity能被看见的时候
protected void onRestart(); //被遮挡后重新显示的时候
protected void onResume(); //当Activity能获得用户焦点的时候
protected void onPause(); //Application启动了另外一个Activity的时候
protected void onStop(); //被第二个Activity完全遮挡的时候,第一个Activity完全不可见的时候
protected void onDestroy(); //被销毁、释放的时候 ; 调用finish() ;系统资源不够用的时候
}
例子:一个Activity_A调用另一个Acitivity_B ,然后返回第一个Activity_A,Activity生命周期中的方法调用顺序。
- A_onCreate()
- A_onStart()
- A_onResume()
- A_onPause()
- B_onCreate()
- B_onStart()
- B_onResume()
- A_onStop()
- B_onPause()
- A_onRestart()
- A_onStart()
- A_onResume()
- B_onStop()
- B_onDestroy()
2.Task的基本概念
Task 是一个栈,后进先出。
Task运行过程:
- 应用程序启动之后,运行第一个Activity之后,该Activity对象被压入到Stack当中。
- 点击Button启动第二个Activity,第二个Activity对象被压入到Stack中。
- 点击第二个Activity中的Button,启动第三个Activity,Activity对象被压入Stack中。
- 点击第三个Activity中的Button,启动显示第四个Activity,Activity对象被压入Stack中。
- 当前显示第四个Activity。
- 点击Back按钮则将第四个Activity对象从Stack中弹出,则当前显示第三个Activity。
- 继续按Back按钮,接下来从Stack中弹出第三、二、一个Activity对象,显示同样依次是第三、二、一个Activity。
注:
- 始终显示栈的最外层的Activity。
- 如果某Activity跳出栈,则使用finish()方法,点击Back按钮时不返回该跳出的Activity。
- Activity在栈中只有压入和弹出两个动作,不能重新排序。
3.Activity和Task之间的关系
Task中的所有Activity移动到一起组成了一个单元。像一个Application思路。
4.对话框风格Activity的使用方法
例子:
添加 android:theme="@android:style/Theme.Dialog"
<activity android:name=".SecondActivity"
android:label="@string/title2"
android:theme="@android:style/Theme.Dialog">
</activity>
则该Activity变成对话框样式。
例子:一个Activity_A调用另一个Acitivity_B(对话框样式) ,然后返回第一个Activity_A,Activity生命周期中的方法调用顺序。
- A_onCreate()
- A_onStart()
- A_onResume()
- A_onPause()
- B_onCreate()
- B_onStart()
- B_onResume()
- A_onStop()
- B_onPause()
- A_onRestart()
- A_onStart()
- A_onResume()
- B_onStop()
- B_onDestroy()
5.Android OS 可能释放的Activiy ,当资源不足时。
- onPause()
- onStonp()
- onDestroy()
- Android开发学习笔记-5 Activity-4 Activity生命周期
- android学习笔记(5)Activity生命周期学习
- Android开发笔记-------Activity生命周期
- Android学习笔记(4):Activity生命周期
- Android学习笔记4 Activity的生命周期
- android学习笔记 -- Activity生命周期
- android Activity 生命周期 学习笔记
- android学习笔记--activity生命周期
- Android开发学习笔记:Activity的生命周期浅析
- Activity 生命周期(一)-- MarsChen Android 开发教程学习笔记
- Activity 生命周期(二)-- MarsChen Android 开发教程学习笔记
- Activity 生命周期(三)-- MarsChen Android 开发教程学习笔记
- **读Android开发艺术探索学习笔记--Activity的生命周期**
- 【Android开发学习笔记】【第五课】Activity的生命周期-上
- 【Android开发学习笔记】【第六课】Activity的生命周期-下
- 从零开始学习Android 开发笔记-Activity生命周期
- android应用开发笔记---Activity生命周期一
- android应用开发笔记---Activity生命周期二
- JQuery操作checkbox、radio
- 总结:关于如何产生几个不同随机数的问题(C/C++)
- FreeSWITCH背后的故事(译)
- C++编程思想读后感(五):Hiding the Implementation
- ubuntu10.04手动安装jdk1.6.0_23配置
- Android开发学习笔记-5 Activity-4 Activity生命周期
- 关于任意长浮点数相加的小程序
- android 的初步_3
- android 解析JSON
- 802.11无线网络权威指南学习笔记(第四章)
- android显示单位sp,dip,px,pt,分辨率及density相关
- HTML5本地存储初探(一)[转自RobinDeng的Blog http://rlog.cn/]
- HTML5本地存储初探(二)[转自RobinDeng的Blog http://rlog.cn/]
- 谷歌的一道面试题(来自javaeye)