Android Activity生命周期

2018-02-18 18:08 更新

Activity基类定义了一系列管理Activity生命周期的事件。

Android应用程序的生命周期由系统严格管理。

Android在单独的进程中运行每个应用程序,每个都托管自己的虚拟机。

Activity类定义以下事件:

  • onCreate()当首次创建Activity时调用
  • onStart()Activity对用户可见时调用
  • onResume()Activity开始与用户交互时调用
  • onPause()当前Activity正在暂停且前一个Activity正在恢复时调用
  • onStop()Activity不再对用户可见时调用
  • onDestroy() 在Activity被系统销毁之前调用
  • onRestart()Activity已停止并再次启动时调用

你不需要对所有这些方法做出反应。

例子

package cn.w3cschool.app;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
/*from www.w3cschool.cn*/
public class MainActivity extends Activity {
    String tag = "www.w3cschool.cn";

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d(tag, "In the onCreate() event");
    }

    public void onStart()
    {
        super.onStart();
        Log.d(tag, "In the onStart() event");
    }

    public void onRestart()
    {
        super.onRestart();
        Log.d(tag, "In the onRestart() event");
    }

    public void onResume()
    {
        super.onResume();
        Log.d(tag, "In the onResume() event");
    }

    public void onPause()
    {
        super.onPause();
        Log.d(tag, "In the onPause() event");
    }

    public void onStop()
    {
        super.onStop();
        Log.d(tag, "In the onStop() event");
    }

    public void onDestroy()
    {
        super.onDestroy();
        Log.d(tag, "In the onDestroy() event");
    }
}
Activity生命周期

注意

当第一次创建Activity时,调用 onCreate()方法。

我们可以使用 onCreate()方法来创建UI元素。

单击后退按钮时,Activity将被销毁。你需要在Activity中写入其他代码,以在销毁时保留其状态。

Activity发送到后台时,以及当用户按下后退按钮时,onPause()方法被调用。

Activity启动时,始终调用onStart() onResume()方法,而不管Activity是从后台恢复还是新创建的。

我们应该使用 onCreate()方法来创建和实例化你将在应用程序中使用的对象。

当你的Activity在前台时,我们应该使用 onResume()方法来启动任何需要运行的服务或代码。

Activity不在前台时,我们应该使用 onPause()方法停止任何不需要运行的服务或代码。

我们应该在销毁Activity之前使用 onDestroy()方法释放资源。

如果应用程序只有一个Activity并且该Activity被销毁,那么应用程序仍将在内存中运行。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号