Activity类呈现了一个封装了窗口显示处理功能的空白屏幕。一个空的Activity并不是特别有用,所以需要使用Fragment, 布局和视图来创建UI.
1. Activity的基本使用
(1)要把UI分配给一个Activity,需要在onCreate方法中调用setContentView.
(2)要在一个应用程序中使用一个Activity,需要在Manifest中对其进行注册。在Activity标签中可以添加intent-filter节点来指定能够用来启动该Activity的intent。
2. Activity栈
Activity栈是当前所有正在运行的Activity的后进先出的集合。栈顶为当前可见的Activity.
3. Activity的状态
- 活动状态: Activity位于栈顶,可见且具有焦点。 Android会不惜一切代价来保持它处于活动状态并根据需要销毁下面部分的Activity.
- 暂停状态: Activity可见但是没有焦点。当一个透明或非全屏Activity位于该Activity之前时处于该状态。系统在极端情况下会终止暂停的Activity.
- 停止状态: Activity不可见。当系统其他地方要求使用内存时它们会成为被终止的首要候选对象。
- 非活动状态:Activity被终止,已经从Activity栈中移除。
4. Activity状态改变监控
onCrear 完整生命周期开始时调用,初始化一个Activity并填充UI
onRestoreInstanceState (Bundle savedInstacvestate) onCreare方法完成后调用,用于恢复UI状态,从savedInstacvestate中恢复数据,该Bundle同时也会传递给onCreate,自从上次Activity可见之后只有当Activity被系统终止时才会调用。
onRestart 加载改变,知道Activity在此进程中已经可见。
onStart Activity可见生存期开始时调用
onResume Activity状态生存期开始时调用,恢复Activity需要,当他处于不活动状态时被挂起的暂停的UI更新,线程或进程。
onSaveInstanceState (Bundle savedInstanceState) 将UI线程改变保存到savedInstanceState,若进程运行时被终止并被重启,Bundle将被传递给onCreare和onRestoreInstanceState。
onPause Activity状态生存期结束时调用
onStop Activity可见生存期结束时调用
onDestroy 在完成生存期结束时调用
来源:https://www.cnblogs.com/yafangwei/p/6419814.html