Android系统(187)---最易懂的Activity启动模式详解
Android基础:最易懂的Activity启动模式详解
前言
Android
基础中,Activity
的启动模式非常重要- 本文将全面介绍
Activity
的启动模式
目录
1. 定义
即Activity启动的方式
2. 启动模式的类别
Android启动提供了四种启动方式:
- 标准模式(
Standard
) - 栈顶复用模式(
SingleTop
) - 栈内复用模式(
SingleTask
) - 单例模式(
SingleInstance
)
3. 知识储备
Activity
的管理方式 = 任务栈- 任务栈 采用的结构 = “后进先出” 的栈结构
- 每按一次Back键,就有一个
Activity
出栈
4. 具体介绍
- 如下图
通俗讲解
图解
5. 四种启动模式的区别
6. 启动模式的设置
启动模式有2种设置方式:在AndroidMainifest
设置、通过Intent
设置标志位
6.1 在AndroidMainifest设置
在AndroidMainifest
的Activity
配置进行设置
<activityandroid:launchMode="启动模式"
//属性
//standard:标准模式
//singleTop:栈顶复用模式
//singleTask:栈内复用模式
//singleInstance:单例模式
//如不设置,Activity的启动模式默认为**标准模式(standard)**
</activity>
6.2 通过Intent
设置标志位
Intent inten = new Intent (ActivityA.this,ActivityB.class);
intent,addFlags(Intent,FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
标记位属性
标记位属性 | 含义 |
---|---|
FLAG_ACTIVITY_SINGLE_TOP |
指定启动模式为栈顶复用模式(SingleTop )
|
FLAG_ACTIVITY_NEW_TASK |
指定启动模式为栈内复用模式(SingleTask )
|
FLAG_ACTIVITY_CLEAR_TOP |
所有位于其上层的Activity都要移除,SingleTask 模式默认具有此标记效果
|
FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS | 具有该标记的Activity不会出现在历史Activity的列表中,即无法通过历史列表回到该Activity上 |
6.3 二者设置的区别
- 优先级不同
Intent
设置方式的优先级 >Manifest
设置方式,即 以前者为准 - 限定范围不同
Manifest
设置方式无法设定FLAG_ACTIVITY_CLEAR_TOP
;Intent
设置方式 无法设置单例模式(SingleInstance
)
7. 总结
- 本文全面介绍了
Android
的4种Activity
启动模式
原文:https://www.jianshu.com/p/399e83d02e33
Android系统(187)---最易懂的Activity启动模式详解相关推荐
- Android中Activity启动模式详解
在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启动模式决定了Activity的启动运行方式. An ...
- Android Activity 启动模式详解
最近有群里的朋友问我 Activity的四种启动模式分别是什么意思? 当初因为项目比较忙,草草的解释了下, Api文档中说的也只是一般,在这里就小记一下吧,以便有更多的朋友对Activity启动模式了 ...
- Activity启动模式详解
2019独角兽企业重金招聘Python工程师标准>>> Activity有四种加载模式 standard: 标准(默认)模式 当通过这种模式来启动Activity时,总会为目标Act ...
- And解roid中Activity启动模式详
转自: http://www.cnblogs.com/fanchangfa/archive/2012/08/25/2657012.html And解roid中Activity启动模式详 在Androi ...
- Activity的启动模式详解
Activity的启动模式详解 Activity有四种载入模式:standard(默认), singleTop, singleTask和 singleInstance. (1).standard(默认 ...
- Android M新特性Doze and App Standby模式详解
转载请标明出处:http://blog.csdn.net/xx326664162/article/details/52312122 文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一定的 ...
- Android Activity Launch Mode 启动模式详解
简介 android:launchMode 属性能设置 Activity 对象启动时是否使用已有的实例还是多次创建,会使得交互设计更加良好,也能避免很多问题. 它是 Androidmanifest.x ...
- Android Activity的4种启动模式详解(示例)
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5233269.html 先介绍下Android对Activity的管理,Android采用Task来管理多个A ...
- Android FrameWork——Activity启动过程详解
前面发了blog分析了ActivityManager框架的大体结构,主要就是一个进程通信机制,今天我通过深入Activity的启动过程再次深入到ActivityManager框架,对其进行一个更深入的 ...
最新文章
- Web 2.0技术对SEO的影响
- 探访2019世界人工智能大会:AI应让人类生活得更幸福
- 按功能顺序列出的 HTML 4.01/XHTML 1.0
- [:zh]<机械课程设计>第三张表自动计算部分 Android安装包[:]2017-12-20
- 条件 推导 迭代 并行
- (pytorch-深度学习系列)模型参数的初始化与访问操作-学习笔记
- Mysql中循环拼接参数_利用循环向数据库中插入数据,参数重复的问题
- python批量音频转格式_ffmpeg 转为16K PCM格式,python生成批量转码脚本
- 网线连接威纶触摸屏失败的解决方法
- 使用ffmpeg进行音频采样率转换
- 拼多多砍价用户福利贴:通过python模拟操作进行拼多多砍价
- 2022网鼎杯青龙组wp
- 像素和分辨率的关系 完全剖析
- 什么是mysql节点_什么是MySQL集群
- 第四章 JavaWeb CSS入门 核心基础 基础形式 + 选择器
- Sandboxie沙盘,代码开源可下载!
- 双(三氟甲基磺酰基)酰亚胺钠 cas91742-21-1白色-类白色晶体-粉末 分子量:303.1358892
- 正交化(Orthogonalization)
- android xutils 注解,android Xutils dbutils 注解
- CPU使用率低 内存使用率高
热门文章
- 从Nand Flash启动U-BOOT的基本原理
- [计算机网络] - IP基础知识
- SVD 与 PCA 的直观解释(1): 线性变换
- SpringSecurity的认识和整合流程
- 服务端设置忽略更新_react服务端渲染: cookie如何透传给后端,后端如何设置cookie...
- 抢红包概率是随机的吗_顺丰发5亿红包给员工:管理学的随机奖励还能这么玩...
- 四则运算编程题第二版
- python 日志模块 日志格式
- Quartz.NET开源作业调度框架系列(二):CronTrigger-转
- iOS-关于iOS开发架构的搭建