前言

Android N以上设备,可以开启多窗口模式,也叫分屏模式,即在屏幕上可以同时显示多个窗口,这多个窗口可以是不同应用的,也可以是同一个应用的。

正文

禁用分屏

app默认允许分屏,如果想要禁止分屏可以在AndroidManifest的Application节点或者Activity节点添加属性

android:resizeableActivity="true"

默认是true,如果不想分屏,可以改为false

对生命周期的影响

在进入分屏和退出分屏模式,activity默认会重启。

禁止Activity重启,可以在AndroidManifest.xml

android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"

重写onConfigurationChanged(),这里可以对分屏处理相关逻辑。

配置configChanges

此时Activity执行的生命周期

#此时当前Activity在顶部,点击任务栏 
onPause:
onStop:
#点击进入分屏模式
onConfigurationChanged newConfig :
onStart:
onResume:
onMultiWindowModeChanged :

配置后,不会销毁再次走一次生命周期

不配置configChanges
#此时当前Activity在顶部,点击任务栏 
onPause:
onStop:
#点击进入分屏模式
onDestroy:
onCreate:
onStart:
onResume:
onMultiWindowModeChanged:

如果不配置就会重新走一次生命周期。

参考文章

  1. Android之分屏模式解析(下)_xiezhaoxian的博客-CSDN博客
  2. Android 多窗口模式(分屏模式) – 简书 (jianshu.com)
  3. Android – 分屏模式(多窗口模式)_dean_mh的博客-CSDN博客_android 多窗口分屏

相关文章

暂无评论

none
暂无评论...