Android--测试Activity的生命周期事件及其回调方法

//activity_main.xml

<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:app="http://schemas.android.com/apk/res-auto"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    tools:context=".MainActivity">

    <TextView

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="Hello World!"

        app:layout_constraintBottom_toBottomOf="parent"

        app:layout_constraintLeft_toLeftOf="parent"

        app:layout_constraintRight_toRightOf="parent"

        app:layout_constraintTop_toTopOf="parent" />

    <Button

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:id="@+id/btn_finish"

        android:text="结束程序"/>

</android.support.constraint.ConstraintLayout>
  
//MainAcyivity

package com.example.abaka;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    private static String TAG="LIFTCYCLE";

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        Log.i(TAG,"(1)onCreate()");

        Button button=(Button)findViewById(R.id.btn_finish);

        button.setOnClickListener(new View.OnClickListener(){

            public void onClick(View view) {

                finish();

            }

            });

    }

    @Override

    public void onStart(){

        super.onStart();

        Log.i(TAG,"(2)onStart");

    }

    @Override

    public void onRestoreInstanceState(Bundle savedInstanceState){

        super.onRestoreInstanceState(savedInstanceState);

        Log.i(TAG,"(3)onRestoreInstanceState()");

    }

    @Override

    public void onResume(){

        super.onResume();

        Log.i(TAG,"(4)onResume()");

    }

    @Override

    public void  onSaveInstanceState(Bundle savedInstanceState){

        super.onSaveInstanceState(savedInstanceState);

        Log.i(TAG,"(5)onSaveInstanceState()");

    }

    @Override

    public void onRestart(){

        super.onRestart();

        Log.i(TAG,"(6)onRestart");

    }

    @Override

    public void onPause(){

        super.onPause();

        Log.i(TAG,"(7)onPause()");

    }

    @Override

    public void onStop(){

        super.onStop();

        Log.i(TAG,"(8)onStup");

    }

    @Override

    public void onDestroy(){

        super.onDestroy();

        Log.i(TAG,"(9)onDestroy()");

    }

}

在这里插入图片描述

完全生命周期的LogCat输出:

在这里插入图片描述

好的,请看以下示例代码: ```java public class MainActivity extends AppCompatActivity { private static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d(TAG, "onCreate"); } @Override protected void onStart() { super.onStart(); Log.d(TAG, "onStart"); } @Override protected void onRestart() { super.onRestart(); Log.d(TAG, "onRestart"); } @Override protected void onResume() { super.onResume(); Log.d(TAG, "onResume"); } @Override protected void onPause() { super.onPause(); Log.d(TAG, "onPause"); } @Override protected void onStop() { super.onStop(); Log.d(TAG, "onStop"); } @Override protected void onDestroy() { super.onDestroy(); Log.d(TAG, "onDestroy"); } } ``` 在这段代码中,我们在每个生命周期方法内部添加了一个Log语句,用于输出当前所处生命周期的名称。这样,在运行过程中,我们可以通过查看LogCat中的输出信息来观察每个生命周期方法的执行情况。 当我们启动应用程序时,可以看到LogCat中输出了以下信息: ``` onCreate onStart onResume ``` 这表明,在应用程序启动时,首先调用了onCreate方法,然后依次调用了onStart和onResume方法。 当我们按下Home键使应用进入后台时,可以看到LogCat中输出了以下信息: ``` onPause onStop ``` 这表明,在应用程序进入后台时,首先调用了onPause方法,然后调用了onStop方法。 当我们再次回到应用程序时,可以看到LogCat中输出了以下信息: ``` onRestart onStart onResume ``` 这表明,在应用程序重新进入前台时,首先调用了onRestart方法,然后依次调用了onStart和onResume方法。 当我们按下Back键退出应用程序时,可以看到LogCat中输出了以下信息: ``` onPause onStop onDestroy ``` 这表明,在应用程序退出时,首先调用了onPause方法,然后调用了onStop和onDestroy方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值