📜  Android Activity生命周期

📅  最后修改于: 2020-09-30 01:10:44             🧑  作者: Mango

Android活动生命周期

Android Activity生命周期由android.app.Activity类的7种方法控制。 android Activity是ContextThemeWrapper类的子类。

活动是android中的单个屏幕。它就像Java的窗口或框架。

在活动的帮助下,您可以将所有UI组件或小部件放在一个屏幕中。

Activity的7个生命周期方法描述了Activity在不同状态下的行为。

Android Activity生命周期方法

让我们看看android活动的7种生命周期方法。

MethodDescriptiononCreate called when activity is first created.onStartcalled when activity is becoming visible to the user.onResumecalled when activity will start interacting with the user.onPausecalled when activity is not visible to the user.onStopcalled when activity is no longer visible to the user.onRestartcalled after your activity is stopped, prior to start.onDestroycalled before the activity is destroyed.




    


Android活动生命周期示例

它提供了有关活动生命周期方法调用的详细信息。在此示例中,我们在logcat上显示内容。

package example.javatpoint.com.activitylifecycle;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d("lifecycle","onCreate invoked");
    }
    @Override
    protected void onStart() {
        super.onStart();
        Log.d("lifecycle","onStart invoked");
    }
    @Override
    protected void onResume() {
        super.onResume();
        Log.d("lifecycle","onResume invoked");
    }
    @Override
    protected void onPause() {
        super.onPause();
        Log.d("lifecycle","onPause invoked");
    }
    @Override
    protected void onStop() {
        super.onStop();
        Log.d("lifecycle","onStop invoked");
    }
    @Override
    protected void onRestart() {
        super.onRestart();
        Log.d("lifecycle","onRestart invoked");
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.d("lifecycle","onDestroy invoked");
    }
}

输出:

您将不会在仿真器或设备上看到任何输出。您需要打开logcat。

现在在logcat上看到:调用了onCreate,onStart和onResume方法。

现在点击HOME按钮。您将看到onPause方法被调用。

稍后,您将看到onStop方法被调用。

现在在模拟器上查看。在家里。现在,单击中心按钮以再次启动该应用程序。

现在,单击lifecycleactivity图标。

现在在logcat上看到:调用了onRestart,onStart和onResume方法。

如果看到模拟器,则将再次启动应用程序。

现在单击后退按钮。现在您将看到onPause方法被调用。

一段时间后,您将看到onStop和onDestroy方法被调用。


在整个活动生命周期中,仅调用一次onCreate()和onDestroy()方法。