标签:
一 概述
Aciivity可以用来表示一个界面,即一个活动的开始,代表Activity的组件启动,活动结束,代表Acitivity的生命周期结束。一个Android应用必须通过Activity运行和启动。在Android中,Activity的生命周期交给系统统一管理。
四个基本概念
Application :应用程序,Applictation里面有Acitivity,他也是一个对象
Activitic :活动的,表示还存在
Activity栈:指向堆区内存,先进后出的原理
Task:任务栈
Activity四中基本状态:
1.ActiveRuning一个新的 Activity启动入栈后,它在屏幕的最前端,处于栈的最顶端,此时它处于可见并和用户交互的激活状态。
2.Pasused当Activity被另一个透明或者Dialog样式的Activity覆盖时的状态。此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去焦点不可与用户交互。
3.Stoped当Activity被另外一个Activity覆盖、失去焦点并不可见时处于spoted状态。
4.Killed Activity被系统杀死回收或者没有被启动时处于Killed状态
1.启动与销毁:
onCreate----onStart----onResume----onPause----onStop----onDestory
2.暂停与恢复
onPause----onResume
3.停止与重启
onStop----onReStart----onStart----onResume
1 onCreate()
:当一个Activity第一次启动时调用,表示一个Activity对象被创建一般情况下,我们会在该方法中做一些初始化的工作(初始化组件,设置事件监听,填充主布局,其他数据)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
2 onStart()
:在onCreate方法之后调用,该方法用于显示界面,完成后我们可以看见界面,但还不能进行交互
@Override
protected void onStart() {
super.onStart();
}
3 onRestart()
: 在当前Activity从停止状态重新被显示时会调用,接着会调用onStart--onResume
@Override
protected void onStart() {
super.onStart();
}
4 onResume()
:在onStart方法之后被调用,此方法完成后,界面可以进行交互,此时,Activity进入运行状态。该状态下可以实现还原状态的操作
@Override
protected void onResume() {
super.onResume();
}
5 onPause()
:当前Activity被另一个Activity不完全覆盖时被调用(或被一个窗口模式的Activity覆盖),此时Activity进入暂停状态,该状态下,如果设备内存不足时有可能被销毁
:当覆盖当前Activity的另一个窗口模式的Activity出栈,此时会调用onResume方法,让Activity重新进入运行状态,该状态下可以保存Activity的状态,已在还原时继续执行
@Override
protected void onPause() {
super.onPause();
}
6 onStop()
:当前Activity被完全覆盖后被调用,此时Activity已经看不见,Activity进入停止状态,该状态下,如果设备内存不足时有可能被销毁
当前Activity重新显示时,会调用onReStart----onStart----onResume
@Override
protected void onStop() {
super.onStop();
}
7 onDestory()
:当Activity被出栈,销毁时调用,表示当前Activity进入killed状态,那么我们一般在该方法进行资源释放工作
@Override
protected void onDestroy() {
super.onDestroy();
}
Activity的生命周期
标签:
原文地址:http://www.cnblogs.com/Dragonl/p/4812099.html