Android多窗口模式简单记录

Android  小知识  2022年12月8日 pm7:23发布2年前 (2022)更新 91es.com站长
74 0 0

前言

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 多窗口分屏

 历史上的今天

  1. 2023: startService()源码分析(0条评论)
  2. 2020: Android 6.0后权限的申请(0条评论)
版权声明 1、 本站名称: 91易搜
2、 本站网址: 91es.com3xcn.com
3、 本站内容: 部分来源于网络,仅供学习和参考,若侵权请留言
3、 本站申明: 个人流水账日记,内容并不保证有效

暂无评论

暂无评论...

随机推荐

毕淑敏: 流露你的真表情

学医的时候,老师出过一道题目:人和动物,在解剖上的最大区别是什么?学生们争先恐后发言,都想由自己说出那个正确的答案。这看起来并不是个很难的问题。有人说,是直立行走。先生说,不对。大猩猩也是可以直立行走的。有人说,是懂得用火。先生不悦道,我问的是生理上的区别,并不是进化工的异同。更有同学答,是...

JAVA 从一个List里删除包含另一个List的数据

前言简单记录一下 List中删除包含另外一个list的数据。本文只是记录一下。正文下面是之前作者写的:/***  这是目前我了解到速度最快的一种*/ @SuppressWarnings("unchecked") public static List<String&g...

[摘]Android monkey命令详解

先来两个简单的Android monkey命令Demo1adb shell monkey -v -v -p com.125la.test --throttle 5000 1000-v -v Level 1级日志,提供更详细的安装信息,如测试中被选中或者未被选中的Activity-p com....

C语言之类型转换符大全

前言C语言类型打印是要有转换符,也就是我们常用的%d,%c等,这里简单记录一下相关规则,方便自己查阅。正文转换说明符占位符                   说明%d                       有符号十进制整数%i 一...

Kotlin面对对象简介

前言简单介绍一下Kotlin面对对象简介。记录一下,方便自己查阅。正文类类就是具备某些共同特征的实体的集合,它是一种抽象的数据类型,它是对所具有相同特征实体的抽象。Kotlin中所有类都继承Any类,它是所有类的父类,如果一个类在声明时没有指定父类,则默认父类为Any类无参数和有参...

UML类图中属性的可见性简介

UML类图中属性的可见性分为4级public 公用的 :用+ 前缀表示 ,该属性对所有类可见protected 受保护的:用 #  前缀表示,对该类的子孙可见private 私有的:用- 前缀表示,只对该类本身可见package 包的:用 ~ 前缀表示,只对同一包声明的其他类可见...