Android: Activity的生命周期

来源:互联网 发布:工作任务提醒软件 编辑:程序博客网 时间:2024/05/05 21:48

Activity生命周期有四个状态和7个方法:

四个状态:

1.当它在屏幕前台时(位于当前任务堆栈的顶部),此时它处于可见并且可以和用户交互的激活状态,叫做活动状态或者运行状态

2.当Activity被另一个透明的Activity或Dialog样式的Activity完全覆盖时,此时的状态叫做暂停状态,它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但是已经失去了焦点,所以不能和用户交互

3.如果一个Activity被另一个Activity完全覆盖掉,叫做停止状态,它依然保持所有状态和成员信息,但是不再可见,窗口也被屏蔽,当系统内存需要被用在其他地方时,它就会被强行终止掉

4.Activity被杀死或者没有被启动时处于断开状态

 

Activity状态转换时会选择性的调用一下方法

void onCreate(Bundle savedInstanceState)

void onStart()

void onResume()

void onRestart()

void onPause()

void onStop()

void onDestroy()

 

下面附加一段调用这些方法的代码:

package life.span;import android.app.Activity;import android.os.Bundle;import android.util.Log;public class ActivityLifespan extends Activity {private String tag=ActivityLifespan.class.getSimpleName();      /** * Activity被创建时执行 */@Override    protected void onCreate(Bundle savedInstanceState) {       super.onCreate(savedInstanceState);       setContentView(R.layout.main);       Log.d(ActivityLifespan.class.getSimpleName(),"onCreate");    }/** * Activity可见时执行 */@Overrideprotected void onStart() {// TODO Auto-generated method stubsuper.onStart();Log.d(tag,"onStart");}/** * Activity可交互时执行 */@Overrideprotected void onResume() {// TODO Auto-generated method stubsuper.onResume();Log.d(tag,"onResume");}/** * Activity重新可见时执行 */@Overrideprotected void onRestart() {// TODO Auto-generated method stubsuper.onRestart();Log.d(tag,"onRestart");}/** *  */@Overrideprotected void onPause() {// TODO Auto-generated method stubsuper.onPause();Log.d(tag,"onPause");}/** * Activity停止时执行 */@Overrideprotected void onStop() {// TODO Auto-generated method stubsuper.onStop();Log.d(tag,"onStop");}/** * Activity被销毁时执行 */@Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();Log.d(tag,"onDestroy");}}


 

0 0
原创粉丝点击