简单易懂的Activity四种启动模式
Activity的四种启动模式
我们在项目开发的过程中,会涉及到应用中各个Activity的跳转,有些Activity是可以复用,不用重复加载,节约内存的使用.
将第二个Activity的启动模式修改掉,这些启动模式可以在功能清单文件AndroidManifest.xml中进行设置中的launchMode属性。
1). starndard 标准的任务栈模式 按照一一排列的方式(默认启动模式)
2). singleTop
如果要开启的界面设置了这种模式,先查看它是否已经位于任务栈顶端,如果已经位于顶端,就直接复用当前顶端的这个 ,不再去创建新的 没有位于顶端,再去创建新的
应用实例:
浏览器的书签页面
为了节省内存
3). singleTask
如果已经开启的Activity已经位于任务栈中,那么再开启它时,会将它上方的所有Activity都干掉,将自己暴漏出来,并且不再创建新的
应用实例:
浏览器的 BrowserActivity
4). singleInstance
如果使用这种方式,那么开启的Activity会被单独的放置在一个任务栈中,并且这个任务栈中只会有这么一个实例
如果一个界面是一个公共界面 任何界面都可以打开的界面
应用实例:
来电话的界面
金山词霸
简单易懂的Activity四种启动模式的更多相关文章
- Android Activity 四种启动模式
task和back stack(任务和回退栈) 任务启动,task被加入到回退栈的栈顶,返回的时候回退栈的栈顶任务会被弹出,并被销毁,栈中的前一任务恢复运行,当activity销毁是,系统不会保留ac ...
- Activity四种启动模式之singleTask应用
Activity启动模式设置: <activity android:name=".MainActivity" android:launchMode=" ...
- Android -- Activity的生命周期,Activity四种启动模式 Standard, SingleTop,SingleTask,SingleInstance
1. 示例图 . 这七个方法定义了Activity的完整生命周期.实现这些方法可以帮助我们监视其中的三个嵌套生命周期循环: Activity的完整生命周期自第一次调用onCreate()开始,直至调 ...
- Activity四种启动模式与Flag及affinity属性详解
Activity有四种加载模式:standard(默认).singleTop.singleTask.singleInstance standard:Activity的默认加载模式,即使某个Activi ...
- android:Activity四种启动模式简单介绍
Activity启动模式 能够依据实际的需求为Activity设置相应的启动模式,从而能够避免创建大量反复的Activity等问题 Activity有四种载入模式 1.standard(默认启动模式, ...
- Activity四种启动模式
转载博客:http://blog.csdn.net/shinay/article/details/7898492 Activity启动方式有四种,分别是:standardsingleTopsingle ...
- activity 四种启动模式
前言 Activity的启动模式决定了Activity的启动运行方式 四种模式 Activity启动模式设置: <activity android:name=".MainActivit ...
- Android中的Activity四种启动模式(launchMode)
转载:http://blog.csdn.net/cjjky/article/details/7533110 我们在开发项目的过程中,会涉及到该应用中多个Activity组件之间的跳转 ...
- Android入门:Activity四种启动模式
一.启动模式介绍 启动模式简单地说就是Activity启动时的策略,在AndroidManifest.xml中的标签的android:launchMode属性设置: 启动模式有4种,分别为standa ...
随机推荐
- hdu 1299 Diophantus of Alexandria (数论)
Diophantus of Alexandria Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java ...
- MVC Html.ValidationSummary()样式优化
先看效果图 在MVC中常用ValidationSummary显示校验信息,默认样式为 针对Html.ValidationSummary()如何做优化 样式一: 在MVC中,如果你使用验证总结方法任何验 ...
- java_js_检查是否全为数字
//检查所有输入文本都是数字类型 var len=blackNumber.length; var regExp=new RegExp("\\d{"+len+"}" ...
- android访问webservice
// nameSpace 命名空间,methodName:方法名字:maps:参数集合:webserviceUrl:访问的webservice的网址:比如:http://17.18.199.100:8 ...
- 安卓app中嵌入一个H5页面,当手机系统设置字体变大时,如何使H5页面的字体不会随用户自己调整的系统字体变化而变化?
webview.getSettings().setTextZoom(100);WebView加上这个设置后,WebView里的字体就不会随系统字体大小设置发生变化了. https://segmentf ...
- iOS 自带二维码扫描功能的实现
自从iOS7以后中新增了二维码扫描功能.因此可以在不借助第三方类库的情况下简单的写出二维码的扫描功能: 原生的二维码扫描功能在AVFoundation框架下,所以在使用原生的二维码扫描功能时要先导入A ...
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.
Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} fai ...
- css3的背景颜色渐变@线性渐变
背景颜色渐变之线性渐变 语法形式: firefox浏览器 background:-moz-linear-gradient(position/deg,startColor,endColor); oper ...
- new 一个button 然后dispose,最后这个button是null吗???
结果当然不是,button虽然释放了资源,但是它扔指向原来的那个地址,故不等于null 可以用button.isdispose==true判断
- spring aop实现
Spring 有如下两种选择来定义切入点和增强处理. 基于 Annotation 的"零配置"方式:使用@Aspect.@Pointcut等 Annotation 来标注切入点和增 ...