Android切换主题生命周期流程与onSaveInstanceState和onRestoreInstanceState,Kotlin

news2024/10/6 21:26:26

Android切换主题生命周期流程与onSaveInstanceState和onRestoreInstanceState,Kotlin

import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
    private val TAG = "fly"
    private val KEY = "my_key"
    private var mBundle: Bundle? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        Log.d(TAG, "onCreate")
    }

    override fun onSaveInstanceState(outState: Bundle) {
        super.onSaveInstanceState(outState)

        val t = System.currentTimeMillis()
        outState.putString(KEY, t.toString())
        Log.d(TAG, "onSaveInstanceState ${t}")
    }

    override fun onRestoreInstanceState(savedInstanceState: Bundle) {
        super.onRestoreInstanceState(savedInstanceState)

        mBundle = savedInstanceState
        Log.d(TAG, "onRestoreInstanceState ${savedInstanceState.getString(KEY)}")
    }

    override fun onResume() {
        super.onResume()
        Log.d(TAG, "onResume ${mBundle?.getString(KEY)}")
    }

    override fun onRestart() {
        super.onRestart()
        Log.d(TAG, "onRestart")
    }

    override fun onStart() {
        super.onStart()
        Log.d(TAG, "onStart")
    }

    override fun onPause() {
        super.onPause()
        Log.d(TAG, "onPause")
    }

    override fun onStop() {
        super.onStop()
        Log.d(TAG, "onStop")
    }

    override fun onDestroy() {
        super.onDestroy()
        Log.d(TAG, "onDestroy")
    }
}

App启动后,把状态栏下滑出来,点击切换深色主题/暗色模式后的生命周期:

Android Activity生命周期以及onSaveInstanceState、onRestoreInstanceState要点备忘-CSDN博客本文作者:Zhang Phil原文链接:Android Activity生命周期以及onSaveInstanceState、onRestoreInstanceState要点备忘一般的,当Android activity的生命周期进入onPause后,Android系统紧接着就要回调:protected void onSaveInstanceStatehttps://blog.csdn.net/zhangphil/article/details/48155371Android Fragment生命周期图以及Activity与Fragment生命周期对照图-CSDN博客Android Fragment生命周期图以及Activity与Fragment生命周期对照图Android Fragment生命周期图:在Fragment的生命周期中,需要重点关注onCreate、onCreateView、onViewCreated。Android Activity与Fragment生命周期对比图:Activihttps://blog.csdn.net/zhangphil/article/details/49942843

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1116222.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于nodejs+vue 校园通勤车系统

但是管理好校园通勤车可视化又面临很多麻烦需要解决, 信息化已经成为主流,开发一个校园通勤车可视化系统小程序一方面的可能会更合乎时宜,困扰管理层的许多问题当中,校园通勤车 管理也是不敢忽视的一块。另一方面来说也可以提高在校园通勤车可视化管理方面的效率给相关管理人员…

【力扣周赛】第 367 场周赛(⭐二维数组当成一维数组,前后缀分解)

文章目录 竞赛链接Q1:100096. 找出满足差值条件的下标 I竞赛时代码——暴力双循环 Q2:100084. 最短且字典序最小的美丽子字符串竞赛时代码——双指针 Q3:100101. 找出满足差值条件的下标 II竞赛时代码——记录可用最大最小值下标 Q4&#xff…

MATLAB模拟的电磁学时域有限差分法(电子书PDF)

摘要: MATLAB语言具有编程简单,并可以给出精美图像的特点,它已成为理工科大学生必备的系统工具平台。其完备的工具箱功能,使得MATLAB日益受到大学生和工程师们的喜爱。《MATLAB模拟的电磁学时域有限差分法》 目录 第1章 FDTD简介 1.1 时域有限…

Bootstrap的列表组相关知识

目录 01-列表组的相关基础知识02-一个简单的列表组示例03-激活或禁用列表组的一行或多行04-设置列表项的颜色05-给列表项添加徽章 01-列表组的相关基础知识 Bootstrap的list-group是一个用于创建列表组件的CSS类,通常用于显示一个项目列表,如导航菜单或…

Spark内核

环境准备及提交流程 底层通信协议 Akka通信协议,收发邮箱是一体的Netty通信协议,收发邮箱是分开的 任务调度 任务的最小单位是线程。失败重试,会记录失败的次数,如果超过最大重试次数,宣告Application失败。失败的…

knife4j-openapi3 无法使用swagger注解@ApiModelProperty

问题描述 当使用knife4j springboot3, 发现无法使用 swagger注解ApiModelProperty需要单独导入一个包但是即使导入这个包也不生效,即使配置了description也为空 原因 简单来说:swagger2 > swagger3的时候出现了破坏性的更新 将ApiMode…

Docker(五)、容器间数据共享~volume

容器间数据共享~volume 一、简单了解二、有两种通过命令设置数据卷的方法一)、方式1. 通过 -v 挂载宿主机目录1、格式2、浅实践下 二)、方式2.实现形式:通过共享容器内挂载点--volumes-from,其他容器指定此挂载点1、格…

基于nodejs+vue中学信息技术线上学习系统

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

Java操作Elasticsearch(新增数据)

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

vscode使用CSScomb插件

1. 安装 在设置中搜索csscomb,把Csscomb: Format On Save勾上 然后去edit in settings.json配置 2.使用 2.1 用官网提供的三种方法 https://github.com/csscomb/csscomb.js/tree/master/config 2.2 自定义 CSS 书写顺序规则可以参考这个荐腾讯 AollyTeam 团队的…

CI2454 2.4g无线MCU芯片应用

Ci2454集成MCU芯片 | Ci2454是一款集成无线收发器和 8 位 RISC(精简指令集)MCU 的SOC芯片。 #Ci2454芯片 集成MCU芯片# 中国芯片# 无线收发器特性: 工作在 2.4GHz ISM 频段 调制方式:GFSK/FSK 数据速率:2Mbps/1Mbps…

交换机控制在同一个网段内的终端,用hybrid接口实现不同的IP通和不通。

实验效果:pc1和pc2不能通,但pc1和pc2分别可以和pc3通。 通过这个实验可以彻底掌握数据包在交换机上的进去的类型状态。 sw1配置: [sw1]dis current-configuration sysname sw1 vlan batch 10 20 100 interface GigabitEthernet0/0/1 port h…

南丁格尔玫瑰图

目录 由来 效果图 echarts官网找相似图 将南丁格尔玫瑰图引进html页面中 引入echarts 准备容器 初始化echarts实例对象 指定配置项和数据(官网给的option) 将配置项给echarts 自定义南格丁尔玫瑰图 修改颜色 修改玫瑰图大小 修改图的模式为半…

springBoot--web--路径匹配

路径匹配 前言在配置文件中配置路径匹配结果 前言 spring5.3之后加入了更多的请求路径匹配的实现策略 以前只支持antPathMatcher策略,现在提供了PathPatternParse策略,并且可以让我们指定到底使用哪种策略 PathPatternParser: 在jmh基准测试下&#xff…

SAP-MM-收货操作报错123

以下的报错都是收货时产生的: 1、消息号M7097:该物料不可能有库存记账 这个消息可以初步判断是因为物料类型的双更新没有勾选 用TCODE:OMS2,找到对应的物料类型,维护双更新。 2、消息号:M8147 不能为条目7333 GBB确立…

使用C#和Flurl.Http库的下载器程序

根据您的要求,我为您编写了一个使用C#和Flurl.Http库的下载器程序,用于下载凤凰网的图片。以下是一个简单的示例代码: using System; using Flurl.Http;namespace DownloadImage {class Program{static void Main(string[] args){string url…

STM32下载程序,可以使用串口了,但是要对的boot进行设置,以及boot的使用,直接烧录,可以运行,但是下次复位,得先换BOOT0为0

STM32下载程序串口下载stm32程序 注意:直接烧录,可以运行,但是下次复位,得先换BOOT0为0 有的朋友可能遇到过这种情况:程序第一次下载的时候可以运行,但是掉电重启之后,程序就不能运行了。这种情…

利用Python爬虫获取某乎热榜

如今,某乎必须要登录才能查看相关话题内容,给我们的日常造成了极大的不便,今天我就教大家如何利用简单的代码,绕开登录限制。 准备工作 配置好python运行环境,推荐 pycharm。复制下面的源代码,运行&#x…

OnlyOffice documentType类型值

参考官网说明: https://api.onlyoffice.com/editors/config/#documentType 其值为:word | cell | slide

Java数字处理类--Math类--随机数

1. 生成随机数方法: 1.1 Math.random()方法 1.2 Random类 2. Math.random()方法 2.1 Math.random():产生0~1之间的double型随机数 package MathInfo;public class MathRandom {//定义产生偶数的公式:int num (int) num1 (int) (Math.random() * (num…