Android学习笔记之——Activity的进一步探索

之前的博文已经对Android系统的activity做了详细的学习:

Android学习笔记之——Activity

 Android学习笔记之——通过Intent来启动不同的Activity

Android学习笔记之——通过Intent来实现Activity之间数据传递

 Android学习笔记之——Activity完整的工作周期 》

 Android学习笔记之——Activity的启动模式

本博文学习一些activity的实用技巧

目录

知晓当前是在哪一个活动

 


知晓当前是在哪一个活动

首先需要新建一个BaseActivity 类

BaseActivity 和普通活动的创建方式并不一样,因为我们不需要让BaseActivity在AndroidManifest.xml中注册,所以选择创建一个普通的Java类就可以了。

然后让BaseActivity 继承自AppCompatActivity ,并重写onCreate() 方法,如下所示:

package com.example.activitytest;

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

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

public class BaseActivity extends AppCompatActivity {

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d("BaseActivity",getClass().getSimpleName());//获取了当前实例的类名,并通过Log打印了出来。
    }
}

接下来我们需要让BaseActivity 成为ActivityTest项目中所有活动的父类。修改FirstActivity、SecondActivity和ThirdActivity的继承结构,让它们不再继承自AppCompatActivity ,而是继承自BaseActivity 。而由于BaseActivity 又是继承自AppCompatActivity 的,所以项目中所有活动的现有功能并不受影响,它们仍然完全继承了Activity中的所有特性。

现在每当我们进入到一个活动的界面,该活动的类名就会被打印出来,这样我们就可以时时刻刻知晓当前界面对应的是哪一个活动了。

发布了255 篇原创文章 · 获赞 281 · 访问量 31万+

猜你喜欢

转载自blog.csdn.net/gwplovekimi/article/details/105358731
今日推荐