屏幕横竖发生变化时,当前Activity发生的生命周期变化
在手机屏幕发生屏幕横竖方向变化时,当前的Activity的生命周期变化为:(如有错误,一起讨论~)
设此时的Acitivty为ActivityA:
ActivityA.onPause>
ActivityA.onSaveInstanceState>
ActivityA.onStop>
ActivityA.onCreate>
ActivityA.onStart>
ActivityA.RestoreInstanceState>
ActivityA.onResume
具体代码:
public class ActivityC extends Activity {private final static String TAG = "ActivityC"; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.activity_c); Log.e(TAG, "onCreate"); if(savedInstanceState != null) {String extra = savedInstanceState.getString("extra"); if(!TextUtils.isEmpty(extra)) {Log.e(TAG, "onCreate : [" + extra + "]"); }}}@Override protected void onStart() {super.onStart(); Log.e(TAG, "onStart"); }@Override protected void onRestart() {super.onRestart(); Log.e(TAG, "onRestart"); }@Override protected void onResume() {super.onResume(); Log.e(TAG, "onResume"); }@Override protected void onPause() {super.onPause(); Log.e(TAG, "onPause"); }@Override protected void onStop() {super.onStop(); Log.e(TAG, "onStop"); }@Override protected void onDestroy() {super.onDestroy(); Log.e(TAG, "onDestroy"); }@Override protected void onSaveInstanceState(Bundle outState) {super.onSaveInstanceState(outState); Log.e(TAG, "onSaveInstanceState"); outState.putString("extra", "this is a test"); }@Override protected void onRestoreInstanceState(Bundle savedInstanceState) {super.onRestoreInstanceState(savedInstanceState); String extra = savedInstanceState.getString("extra"); Log.e(TAG, "onRestoreInstanceState : [" + extra + "]"); }public void startDialog(View v) {Intent intent = new Intent(ActivityC.this, DialogActivity.class); startActivity(intent); }public void startActivityA(View v) {Intent intent = new Intent(ActivityC.this, ActivityA.class); startActivity(intent); }public void startActivityB(View v) {Intent intent = new Intent(ActivityC.this, ActivityB.class); startActivity(intent); }public void finishActivityC(View v) {ActivityC.this.finish(); }}
屏幕横竖发生变化时,当前Activity发生的生命周期变化相关推荐
- Activity和Fragment生命周期变化
情形一:启动应用加载Activity和Fragment Activity::onCreate Fragment::onAttach Fragment::onCreate Fragment::onCre ...
- Android开发之常见面试题Activity跳转生命周期变化
现在问生命周期一般不会问7个而是会连着问你两个页面生命周期的变化: 例如ActivityA->跳转到ActivityB的时候两个页面连续的生命周期如下图: 2020-09-07 17:31:28 ...
- Android 禁止屏幕旋转 旋转屏幕时保持Activity内容
Android 禁止屏幕旋转 & 旋转屏幕时保持Activity内容 1.在应用中固定屏幕方向. 在AndroidManifest.xml的activity中加入: an ...
- android屏幕旋转生命周期,Activity、Fragment生命周期---横竖屏切换的生命周期
先贴出一张大家众所周知activity流程图 onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态.onStart():A ...
- Android旋转屏幕时阻止activity重建
Android在旋转屏幕时activity会被重建,重新调用activity的各个生命周期,如果不想重建,那么需做如下设置: android:configChanges="orientati ...
- android 屏幕横竖屏切换时生命周期运行详解,创建横屏layout,has no declaration in the base
横屏代码 1.配置文件设置 android:screenOrientation="landscape" 2.java代码设置 setRequestedOrientation(Act ...
- 解决Android手机 屏幕横竖屏切换
Android中当屏幕横竖屏切换时,Activity的生命周期是重新加载(说明当前的Activity给销毁了,但又重新执行加载),怎么使屏幕横竖屏切换时,当前的Activity不销毁呢? 1. 在An ...
- Activity 在横竖屏切换情况下的生命周期变化
title: Activity 在横竖屏切换情况下的生命周期变化 date: 2018-04-26 23:05:57 tags: [Activity] categories: [Mobile,Andr ...
- android activity横竖屏切换,Activity重新创建问题解决!
activityA和B A跳转到B 1:在主配置文件中添加Bactivity,如果不想B在横竖屏切换的时候导致activity的销毁和重新创建;可在声明activity中添加 android:conf ...
最新文章
- opencv与两个摄像头实现双目标定与测距
- brew更新的时候不更新某个应用_这样用 Git 想不升职加薪都难!
- bzoj4788: [CERC2016]Bipartite Blanket
- 软件工程讲义 3 两人合作(2) 要会做汉堡包
- 【DevCloud·敏捷智库】如何利用故事点做估算
- ubuntu 删除opencv4_ubuntu16.04 卸载重装Opencv
- 如何在家打造一个沉浸式的家庭影院呢?
- LC152---乘积最大子数组
- 推荐系统:AB测试(AB Test)
- 嵌入式面试之————大小端
- 为何excel中数据无法计算机,Excel中数字无法正常求和怎么办?
- 杨辉三角杨辉三角 || (JavaScript)
- MySQL运维进阶必备
- 如何快速实现在网页中调用文档扫描仪 (2)
- 介绍ReLU6!计算机视觉实习面经(京东/商汤/思谋/依图/图森/字节/腾讯)
- 全球家电产业格局生变:日资企业地位崩塌
- 如何在使用计算机时不想砸了它?
- ggplot添加图例
- <初识Python及编程环境搭建>——《Python》
- 知识:JavaScript构造函数详解