安卓Activity生命周期详解

一、安卓Activity生命周期有哪些

在了解安卓Activity生命周期之前,我们需要先了解Activity。Activity是Android系统中最重要的四大组件之一,代表用户与系统进行交互的窗口。Activity有四种状态,分别是运行状态、暂停状态、停止状态、销毁状态,而Activity的生命周期就是指Activity从创建到销毁这个整个过程。

常见的Activity生命周期有下面这些:

  • onCreate()
  • onStart()
  • onResume()
  • onPause()
  • onStop()
  • onDestroy()
  • onRestart()

二、安卓Activity生命周期方法

1. onCreate()

这个方法在Activity第一次创建时调用,一般用于初始化界面和数据。

   
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}
   

2. onStart()

此方法在Activity可见时调用,但是还没有处于前台,用户无法与Activity进行交互。

   
@Override
protected void onStart() {
    super.onStart();
    Log.d(TAG,"onStart");
}
   

3. onResume()

Activity进入前台并且可以与用户交互时,系统会调用此方法。

   
@Override
protected void onResume() {
    super.onResume();
    Log.d(TAG,"onResume");
}
   

4. onPause()

当Activity被其他Activity遮盖或者用户回到桌面时,当前Activity会进入暂停状态,此时就会调用此方法。

   
@Override
protected void onPause() {
    super.onPause();
    Log.d(TAG,"onPause");
}
   

5. onStop()

当Activity不再可见时,也就是进入停止状态时,会调用此方法。

   
@Override
protected void onStop() {
    super.onStop();
    Log.d(TAG,"onStop");
}
   

6. onDestroy()

当Activity即将被销毁时,会调用此方法进行资源的回收和释放。

   
@Override
protected void onDestroy() {
    super.onDestroy();
    Log.d(TAG,"onDestroy");
}
   

7. onRestart()

当已停止的Activity重新启动时,会调用此方法。

   
@Override
protected void onRestart() {
    super.onRestart();
    Log.d(TAG,"onRestart");
}
   

三、安卓Activity跳转生命周期

在Activity跳转过程中,会涉及到两个Activity的生命周期。比如从MainActivity跳转到SecondActivity,此时MainActivity就会进入停止状态,而SecondActivity则会从创建到启动到恢复再到运行,最后进入生命周期的顶点。

四、Activity的生命周期

一个完整的Activity生命周期包含了下面这些:

创建

  • onCreate()
  • onStart()
  • onResume()

运行

  • onPause()
  • onResume()

暂停

  • onPause()
  • onStop()

停止

  • onRestart()
  • onStop()

销毁

  • onDestroy()

五、Activity生命周期方法

我们从这七个生命周期方法中选择以下几个作为重点探讨。

  • onCreate()
  • onResume()
  • onPause()
  • onStop()
  • onDestroy()

六、Activity完整生命周期

下面是一个Activity完整生命周期的图示。

七、Activity生命周期图

下面这张图直观展示了Activity的各生命周期方法是在哪个时候被调用的。

八、请简述Activity的生命周期

Activity的生命周期包括创建、运行、暂停、停止和销毁这些状态,每个状态都有对应的生命周期方法。在Activity创建时,会调用onCreate()、onStart()、onResume()方法;运行时,会调用onPause()、onResume()方法;暂停时,会调用onPause()、onStop()方法;停止时,会调用onRestart()、onStop()方法;销毁时,会调用onDestroy()方法。Activity生命周期的变化对应了Activity的状态变化,开发者可以通过重写生命周期方法来执行一些操作或者保存一些状态,在合适的时候进行相应的处理。

九、Activity的七大生命周期

Activity的七大生命周期包括onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()和onRestart(),这些生命周期方法会在特定的时刻被系统调用。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/233697.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-11 17:11
下一篇 2024-12-11 17:11

相关推荐

  • Linux sync详解

    一、sync概述 sync是Linux中一个非常重要的命令,它可以将文件系统缓存中的内容,强制写入磁盘中。在执行sync之前,所有的文件系统更新将不会立即写入磁盘,而是先缓存在内存…

    编程 2025-04-25
  • 神经网络代码详解

    神经网络作为一种人工智能技术,被广泛应用于语音识别、图像识别、自然语言处理等领域。而神经网络的模型编写,离不开代码。本文将从多个方面详细阐述神经网络模型编写的代码技术。 一、神经网…

    编程 2025-04-25
  • git config user.name的详解

    一、为什么要使用git config user.name? git是一个非常流行的分布式版本控制系统,很多程序员都会用到它。在使用git commit提交代码时,需要记录commi…

    编程 2025-04-25
  • Linux修改文件名命令详解

    在Linux系统中,修改文件名是一个很常见的操作。Linux提供了多种方式来修改文件名,这篇文章将介绍Linux修改文件名的详细操作。 一、mv命令 mv命令是Linux下的常用命…

    编程 2025-04-25
  • Python输入输出详解

    一、文件读写 Python中文件的读写操作是必不可少的基本技能之一。读写文件分别使用open()函数中的’r’和’w’参数,读取文件…

    编程 2025-04-25
  • 详解eclipse设置

    一、安装与基础设置 1、下载eclipse并进行安装。 2、打开eclipse,选择对应的工作空间路径。 File -> Switch Workspace -> [选择…

    编程 2025-04-25
  • Python安装OS库详解

    一、OS简介 OS库是Python标准库的一部分,它提供了跨平台的操作系统功能,使得Python可以进行文件操作、进程管理、环境变量读取等系统级操作。 OS库中包含了大量的文件和目…

    编程 2025-04-25
  • Java BigDecimal 精度详解

    一、基础概念 Java BigDecimal 是一个用于高精度计算的类。普通的 double 或 float 类型只能精确表示有限的数字,而对于需要高精度计算的场景,BigDeci…

    编程 2025-04-25
  • nginx与apache应用开发详解

    一、概述 nginx和apache都是常见的web服务器。nginx是一个高性能的反向代理web服务器,将负载均衡和缓存集成在了一起,可以动静分离。apache是一个可扩展的web…

    编程 2025-04-25
  • MPU6050工作原理详解

    一、什么是MPU6050 MPU6050是一种六轴惯性传感器,能够同时测量加速度和角速度。它由三个传感器组成:一个三轴加速度计和一个三轴陀螺仪。这个组合提供了非常精细的姿态解算,其…

    编程 2025-04-25

发表回复

登录后才能评论