Android Activity 之横竖屏的生命周期

Android学习——关于Activity横竖屏切换时的生命周期变化 Android学习——关于Activity横竖屏切换时的生命周期变化 一个Activity的生命周期流程图 一个小tips ndroid Logcat使用起来可以方便的观察调试内容,基本上的使用方法(巧用Logcat调试程序)。 一、Log.v 的调试颜色为黑色的,任何消息都会输出,这里的v代表verbose啰嗦的意思,平时使用就是Log.v(“”,”“); 二、Log.d的输出颜色是蓝色的,仅输出debug调试的意思,但他会输出上层的信息,过滤起来可以通过DDMS的Logcat标签来选择 三、Log.i 阅读详情
1、刚进a页面(竖屏)
a-onCreat —— a-onStart —— a-onResume
 
2、a页面竖屏变成横屏(a-竖 b-横)
a-onPause —— a-onSaveInstanceState —— a-onStop —— a-onDestory —— b-onCreat —— b-onStart —— a-onRestoreInstanceState —— b-onResume
 
3、a页面由横屏变为竖屏(a-横 b-竖)
a-onPause —— a-onSaveInstanceState —— a-onStop —— a-onDestory —— b-onCreat —— b-onStart —— a-onRestoreInstanceState —— b-onResume


 上面是正常情况下页面横竖屏的生命周期,在切换横竖屏的时候页面会先销毁然后重新创建,但如果不想页面销毁再重建要怎样做呢,我们可以在AndroidManifest.xml中配置activity的configChanges属性(亲测),这个时候切换横竖屏的时候就不需要先销毁再重建了

1、配置activity的configChanges属性
      
         a:Andorid 3.2以前的SDK可以使用如下配置
               android:configChanges="orientation|keyboardHidden"

         b:而Adnroid 3.2以后的SDK必须添加一个screenSize属性,具体如下
               android:configChanges="keyboardHidden|orientation|screenSize"
               或者
               android:configChanges="orientation|screenSize"

2、重写onConfigurationChanged方法

  1. @Override
  2. public void onConfigurationChanged(Configuration newConfig) {
  3. super.onConfigurationChanged(newConfig);
  4. Log.i(TAG, "onConfigurationChanged called.");
  5. switch (newConfig.orientation) {
  6. case Configuration.ORIENTATION_PORTRAIT:
  7. Log.i(TAG, "onConfigurationChanged called.ORIENTATION_PORTRAIT ");
  8. break;
  9. case Configuration.ORIENTATION_LANDSCAPE:
  10. Log.i(TAG, "onConfigurationChanged called.ORIENTATION_LANDSCAPE " );
  11. break;
  12. }
  13. }

3、由横屏切换成竖屏
日志输出
onConfigurationChanged called.
onConfigurationChanged called.ORIENTATION_PORTRAIT




Android Activity横竖屏切换生命周期详解 关于Activity生命周期和横竖屏切换时,生命周期的执行过程,网上有很多文章。但是都写的很模糊,并且不完善。一般的我们去切换屏幕方向都是不希望Activity被重新创建,这时就需要对一些属性进行设置,或者使用代码设置。文章通过以上方面解析Activity在横竖屏切换时,生命周期方法执行过程。 1.Activity生命周期 2.configChanges属性解析 3.orientati... 阅读详情

相关推荐

android 横竖屏旋转Activity生命周期变化(面试)

题目:android 横竖屏旋转Activity生命周期如何变化? 上网查询: android:screenOrientation="" 常用的属性: unspecified,默认值,由系统决定,不同手机可能不一致 landscape,强制横屏显示 portrait,强制竖屏显 behind,与前一个activity方向相同 sensor,根据物理传感器方向转动,用户90度、18...

晨光如常 1306

竖屏activity_a跳转横屏activity_b,activity_b页面关闭返回activity_a,activity_a会先显示竖屏再显示横屏最后显示竖屏

activity横竖屏跳转问题,多次旋转,横竖屏切换

congcongguniang的博客 516

Android 横竖屏切换 Activity生命周期log

1、新建一个Activity,并把各个生命周期打印出来 2、运行Activity,得到如下信息 onCreate--> onStart--> onResume--> 3、按crtl+f12切换成横屏时 onSaveInstanceState--> onPause--> onStop--> onDestroy--> onCreate--> onStart--> onResto

Gongqingshuai的专栏 860

Activity全解析

Activity

李青涛的博客 2470

Android面试:横竖屏切换时候Activity的生命周期

Activity生命周期(有七个生命周期组合): onCreate(),onStart(),onResume(),onPause(),onStop(),onDestroy(); onCreate、onStart、onResume:启动应用程序onPause、onStop:失去焦点onRestart、onStart、onResume:重新获得焦点onPause、onStop、onDest

PorridgeZhou的博客 628

Android横竖屏切换时Activity的生命周期

在Android开发中,当用户将设备从横屏切换到竖屏或者从竖屏切换到横屏时,Activity会经历一系列的生命周期变化。这些变化会影响到Activity中的状态和数据,因此开发者需要了解这些生命周期的变化,以便在切换过程中正确处理相关逻辑。可以从Bundle对象中获取之前保存的数据,并进行相应的恢复操作。在Android中,当屏幕方向发生变化时,系统会销毁当前的Activity并重新创建一个新的Activity实例。需要注意的是,系统在销毁和重新创建Activity时,会自动调用这些方法来保存和恢复数据。

2301_79326930的博客 842

Android-Activity横竖屏切换时的生命周期

Android-Activity横竖屏切换时的生命周期 相信大家对活动的生命周期十分了解了,它的7个生命周期方法onCreate(),onStart(),onResume(),等在什么时候调用都很熟悉。那么,当一个活动运行时锁屏,返回主界面,旋转屏幕时方法会怎么调用,数据是如何保存的,我分享一下我所学的。 新的方法 onSaveInstanceState():当activity变得容易被系统回收时调用 onRestoreInstanceState():被系统回收的activity重新创建时调用 onCon

qq_56785698的博客 1969

Vitis 安装及环境配置

Vitis 官方手册 https://www.xilinx.com/html_docs/xilinx2020_1/vitis_doc/index.html Xilinx Downloads center https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vitis.html 系统要求如下图所示,Windows系统只能支持Vitis嵌入式系统开发流程,不能支持加速设计 1.安装ubuntu18.0

怠桑的博客 7051

Activity横竖屏切换后的生命周期

Activity的生命周期包括:onCreate,onStart,onResume,onPause,onStop,onDestroy.onReStart。默认情况下,Activity横竖屏切换后,Activity会被销毁并重新创建。因为Activity中的onSaveInstanceState和onRestoreInstanceState和生命周期密切相关,因此讨论生命周期时,将两者加入其中一起讨论

ZRP的博客 1163

WPS Office 2026免费安装指南:AI办公与安全使用全解析

办公软件作为数字化办公的核心工具,其基本原理是通过文档处理、数据计算和演示展示等功能模块满足用户日常办公需求。随着人工智能技术的发展,现代办公软件逐步集成AI能力,通过自然语言处理和数据分析算法提升工作效率。在技术价值层面,优秀的办公软件不仅需要保持格式兼容性和跨平台同步能力,更要注重用户数据安全防护。从应用场景来看,无论是个人文档编辑、企业报表分析还是团队协作演示,办公软件都发挥着关键作用。WPS Office 2026作为国产办公软件代表,深度融合AI助手功能,支持智能写作和数据分析,同时通过官方免费策

weixin_30599769的博客 708

腾讯云TDSQL MySQL版 - 开发指南兼容性

语言结构 分布式实例支持所有 MySQL 使用的文字格式,包括: String Literals Numeric Literals Date and Time Literals Hexadecimal Literals Bit-Value Literals Boolean Literals NULL Values String Literals String Literals 是一个 bytes 或者 characters 的序列,两端被单引号'或者双引号"包围,TDSQL MySQL版

weixin_43872058的博客 909

Android屏幕横竖屏切换和生命周期管理的详细总结

Android屏幕横竖屏切换和生命周期管理的详细总结       一般的我们去切换屏幕方向都是不希望Activity被重新创建,这时就需要对一些属性进行设置,或者使用代码设置。        今天想学一下Android屏幕横竖屏切换,但是网上很多知识不准确或不正确,这里我还是自己总结一篇文章,供大家参考。

wenzhi的博客 2万+

TSMaster MBD模块实战:如何用Simulink模型快速搭建汽车电子测试环境

本文实战演示了如何利用TSMaster的MBD模块,将Simulink模型快速部署为汽车电子自动化测试环境的核心。通过建立模型与TSMaster系统变量的实时数据通道,并利用数据仓库统一数据定义,工程师能无缝连接算法仿真与真实总线网络,显著提升从模型到HIL测试的验证效率。

php55的博客 207

Android 横竖屏切换对Activity生命周期的影响

文章转载自http://blog.youkuaiyun.com/hzw19920329/article/details/51345971       前面我们分析过Activity的生命周期(见:android—–Activity生命周期),但是在现实应用中我们可能会对手机进行横竖屏切换,那么这样的切换对Activity的生命周期有什么影响呢?       先来看看实例:[java] view plain co

我爱特雷西 375

【QT开发教程】使用Qt进行NFC编程

近场通信(NFC,Near Field Communication)技术广泛应用于现代设备中,例如智能手机、支付终端和门禁系统。Qt提供了一套完整的NFC模块,使开发者可以轻松地在应用程序中实现NFC功能。本文将介绍如何在Qt中进行NFC编程,包括基本概念、使用方法以及一些实际的示例。

科技改变人类,技术成就未来 1467

Roboflow 与 YOLOv11 数据集全流程:从获取到训练,让你数据无忧

上传图像:点击“Upload”按钮,批量上传本地图像(支持 JPG、PNG 格式,单张最大 10MB)。智能标注:利用 Roboflow 的“Auto-Annotate”功能,基于预训练模型自动生成标注,再手动微调,标注效率提升 70%。格式导出:标注完成后,同样选择“YOLOv11”格式导出,流程与公开数据集一致。

m0_71589036的博客 271

Android 横竖屏切换时Activity生命周期变化

1、新建一个Activity,并把各个生命周期打印出来 onCreate, 创建activity时调用。设置在该方法中,还以Bundle中可以提出用于创建该 Activity 所需的信息。onStart, activity变为在屏幕上对用户可见时,即获得焦点时,会调用。onResume, activity开始与用户交互时调用(无论是启动还是重新启动一个活动,该方法总是被调用的) onSaveIn...

u013773608的博客 1691

从原理到实战:深入解析 Synopsys VCS 仿真快照技术,提升验证效率

VCS Checkpoint 技术摘要 VCS Checkpoint 是 Synopsys VCS 提供的仿真状态快照功能,可将完整的仿真状态(寄存器、存储器、时钟、随机种子等)序列化保存。主要应用场景包括:跳过耗时初始化阶段、覆盖率驱动验证、Debug复现和UVM分阶段验证。核心原理是对仿真内核状态的完整序列化,需注意文件句柄等特殊对象需手动处理。 使用方式: 编译时添加 -checkpoint 选项 运行时通过 $save 系统任务或 +checkpoint 参数保存状态 通过 +restore 参数恢

元直的博客 248

android横竖屏切换动画,横竖屏切换时候Activity的生命周期

曾经遇到过一个面试题,让你写出横屏切换竖屏Activity的生命周期。现在给大家分析一下他切换时具体的生命周期是怎么样的:1、新建一个Activity,并把各个生命周期打印出来2、运行Activity,得到如下信息onCreate-->onStart-->onResume-->3、按crtl+f12切换成横屏时onSaveInstanceState-->onPause--&...

weixin_39668890的博客 495

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Android手机切换横竖屏时Activity的生命周期

今天看到一个关于Android手机切换横竖屏时Activity的生命周期的问题,在论坛先查阅了相关的文章,然后自己也测试了一下,发现结果有些不同。我测试的模拟器是Android4.0,自己的手机是Android4.4.4的,如果结果有什么差错,希望多多指教。好了,现在开始进入正文。 第一部分:测试代码 package com.njit.activity_screenorention_life

路漫漫其修远兮 2825

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

android横竖屏切换 生命周期,Activity 在横竖屏切换情况下的生命周期变化

title: Activity 在横竖屏切换情况下的生命周期变化date: 2018-04-26 23:05:57tags: [Activity]categories: [Mobile,Android]---概述Activity 在横竖屏切换的时候,生命周期是不一样的,本地通过打印 log 的方式,看下区别.测试的机器是 Android6.0 .不做任何配置的情况下第一次启动D/LifeCircl...

weixin_34170737的博客 325

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Android Activity横竖屏切换的生命周期

参考文章 Android Activity 横竖屏切换的生命周期Android应用:横竖屏切换总结

zuochunsheng的博客 557

Android横竖屏切换Activity生命周期变化

横竖屏切换Activity生命周期变化,网上资料各式各样,特意写个小实验,结果如下: 切换横屏和切换竖屏生命周期一样,都会调用 onPause,onStop,onDestroy,onCreate,onStart,onResume 给Activity配置android:configChanges="orientation"后 横竖屏切换时会先调用onConfigurationCh

Hornsey的博客 632

Android Studio测试activity横竖屏变化时的生命周期

目录一、简介二、测试Activity的生命周期1. 代码2. 运行3. 结论4. 配置属性三、测试Activity启动另一个Activity的生命周期变化1. 代码2. 运行 一、简介 Activity的生命周期流程图 调试 Log.v的输出颜色是黑色的,任何消息都会输出,这里的v(verbose)是啰嗦的意思,平时使用就是Log.v(“”,”“); Log.d的输出颜色是蓝色的,仅输出debug调试的意思,但他会输出上层的信息,过滤起来可以通过DDMS的Logcat标签来选择 Log.i的输出是绿

qq_48008050的博客 613

android 横竖屏切换activity生命周期

1、AndroidManifest.xml不设置Activity的android:configChanges时,切屏会重新调用各个生命周期, 切横屏时会执行一次,切竖屏时会执行两次。生命周期如下: onSaveInstanceState-onPause-onStop-onDestory-onCreate-onStart-onRestoreInstanceState-on...

唐衡三 1875
上一篇: 一张导图告诉你Android的启动过程
下一篇: Dagger2实现依赖注入之一步一步带你入门
Interface_l
博客等级 码龄12年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值