Activity recreate 后停留在onPause()状态
来源:互联网 发布:个性挂历制作软件 编辑:程序博客网 时间:2024/05/29 07:41
最近做APP中实现黑夜模式时,使用了Activity的recreate()方法。从Activity B中返回Activity A中时,在A的onResume()中检查模式是否变动,变动即recreate()。但recreate()后,重建的Activity A,经过onStart() 、onResume()、onPause(),并停留在了onPause()状态。停留在onPause()状态后,在魅族手机上,出现问题:点击返回键,不会触发onBackPressed(),不会退出当前Activity。(在模拟器和小米手机上没有这个问题)
@Override protected void onResume() { super.onResume(); boolean nightMode = isNightMode(); if (nightMode != mIsNightMode) { recreate(); } }
之后,发现使用Handler,将recreate delay一下,就不会出现这个问题。重建的Activity正常停留在了onResume()状态下。
@Override protected void onResume() { super.onResume(); boolean nightMode = isNightMode(); if (nightMode != mIsNightMode) { new Handler().postDelayed(new Runnable() { @Override public void run() { recreate(); } }, 100); } }
记录一下,有空再研究。
0 0
- Activity recreate 后停留在onPause()状态
- Ubuntu系统开机后停留在Grub状态解决方法
- Android学习 多读官网,有益健康--Activity状态 onPause()
- Android学习 多读官网,有益健康--Activity状态 onPause()
- Activity在onStop后处于什么状态
- android中Animation动画的连续播放与播放完毕后停留在最后的状态
- css3 使用animation 只执行一次然后停留在执行后的状态
- Activity中的onPause
- ApiDemos之activity recreate方法
- Activity重新创建之recreate
- Activity在onStop后到底处于什么状态?
- Activity在onStop后到底处于什么状态?
- 【Android】非 recreate() 形式的夜间模式实现(自由切换,不改变任何状态,不重新初始化整个activity)
- Eclipse启动无响应 停留在Loading workbench状态
- eclipse启动无响应,停留在Loading workbench状态
- eclipse启动无响应,停留在Loading workbench状态
- eclipse启动无响应,停留在Loading workbench状态
- Eclipse启动无响应 停留在Loading workbench状态
- iOS内存管理-所有权修饰符:__strong, __weak/__unsafe_unretained, __autoreleasing
- .NET跨平台之旅:corehost 是如何加载 coreclr 的 企
- Rxjava学习
- 欧拉项目 第20题 Factorial digit sum
- tag_BIGINT
- Activity recreate 后停留在onPause()状态
- 【追求进步】斐波那契数列
- 1、单目相机内参标定(camera_calibration_internal)
- C/C++—— 写一个函数,它的参数为指向函数的指针,返回类型也为指向函数的指针
- jQuery常用事件处理
- hashMap最久最大遍历
- iOS CocoaPods安装和使用图解
- 我们对入口函数之前可以做什么
- Java线程面试题