11、横竖屏切换+12、任务和栈+13、activity启动模式
来源:互联网 发布:网络出租车管理办法 编辑:程序博客网 时间:2024/06/05 00:50
11、横竖屏切换(横竖屏方向改变带来的问题)
问题:当横竖屏切换时,会导致生命周期重置,这在游戏设计中是不能被理解的,所以针对这种问题我们可以有2种方法解决:
1、直接在清单文件中指定屏幕的方向
android:screenOrientation=”landscape” | portrait
2、或在清单文件通过配置内容随着方向改变而改变,但是生命周期方法不会再重新调用
android:configChanges=”keyboardHidden|screenSize|orientation”
12、任务和栈
adb shell dumpsys activity 使用命令查看activity启动任务栈的详细信息
* Task – 任务
一个运用程序里面可以包含多个界面,每一个界面都是来设计显示界面,并且与用户进行交互.没一个界面都是一个任务.
- Stack – 栈
一种数据格式,遵循后进先出. 队列(queue)也是
13、activity启动模式
设计activity的启动模式有2中方法:
第一种是在清单文件设计:
第2中方法是在启动界面是设计:
启动模式的分类(四钟):
- standard - 默认的启动模式
启动多少次界面,就会有多少个实例被压到栈中。
- singleTop - 单一顶部模式
只要当前启动的activity,实例位于栈顶,那么将不会继续创建该界面的实例,只要不是位于栈顶,那么与默认的启动模式一样。
场景: 短信编写界面,用于去回避一些奇怪的现象。
- singleTask - 单一任务栈
如果启动的任务在栈中已经存在实例,那么将复用以前的实例对象,并且把该实例与栈顶之间的其他实例全部移除掉,让该实例位于栈顶。
应用场景: 浏览器的界面 ,如果一个应用启动非常的消耗内存开销,那么可以做成这个启动模式。
- singleInstance - 全局唯一模式 (单例模式)
特点: 如果哪一个界面,它的启动模式是singleInstance,那么它的实例将会存放到一个独立的栈中,并且这个栈有且只有它自己一个实例 。以后要想显示它,无非就是做栈的切换工作就可以了。
应用场景: 如果一个界面在单位时间内,创建的频率非常大,非常高。 可以设计成singleInstance模式。 拨号界面、紧急呼叫界面
- 11、横竖屏切换+12、任务和栈+13、activity启动模式
- Android基础总结——Activity生命周期、横竖屏切换和启动模式(任务栈)
- Activity的启动模式和横竖屏切换
- 横竖屏、任务栈和4种Activity的启动模式
- Activity任务栈和Activity启动模式
- Activity的启动模式,任务栈的切换
- Activity任务栈和启动模式
- Activity任务栈和启动模式
- Activity启动模式和任务栈(2)
- 任务栈 和 Activity的启动模式
- activity的启动模式和任务栈
- Activity生命周期,任务栈和启动模式
- Activity任务栈和启动模式
- activity横竖屏切换
- Activity 横竖屏切换
- Activity横竖屏切换
- Activity启动模式&任务栈
- 任务栈&activity启动模式
- Java笔记
- MediaPlayer 和 VideoView介绍
- 原生Json数据的解析
- 题目1064:反序数
- Raspberry Pi 远程登录配置
- 11、横竖屏切换+12、任务和栈+13、activity启动模式
- PHP编程效率的20个要点
- 【量化课堂】彼得·林奇的成功投资
- PsySH——PHP交互式控制台
- JNI/NDK开发指南(五)
- Angular2父组件类调用子组件方法
- MyBatis Generator CMD 命令
- Java 内存溢出(java.lang.OutOfMemoryError)的常见情况和处理方式总结
- Activity的总结