更多Activities讨论:http://www.eyeandroid.com/forum.php?mod=forumdisplay&fid=2&filter=typeid&typeid=42
我们在开发项目的过程中,会涉及到该应用中多个Activity组件之间的跳转,或者夹带其它应用的可复用的Activity。例如我们可能希望跳转到原来某个Activity实例,而不是产生大量重复的 Activity。这样就需要我们为 Activity 配置特定的加载模式,而不是使用默认的加载模式。
Activity 有四种加载模式
[1] standard 模式
这是默认模式,每次激活Activity时都会创建Activity实例,并放入任务栈中。
[2] singleTop 模式
如果在任务的栈顶正好存在该Activity的实例,就重用该实例( 会调用实例的 onNewIntent() ),否则就会创建新的实例并放入栈顶,即使栈中已经存在该Activity的实例,只要不在栈顶,都会创建新的实例。
[3] singleTask 模式
如果在栈中已经有该Activity的实例,就重用该实例(会调用实例的 onNewIntent() )。重用时,会让该实例回到栈顶,因此在它上面的实例将会被移出栈。如果栈中不存在该实例,将会创建新的实例放入栈中。
[4] singleInstance 模式
在一个新栈中创建该Activity的实例,并让多个应用共享该栈中的该Activity实例。一旦该模式的Activity实例已经存在于某个栈中,任何应用再激活该Activity时都会重用该栈中的实例( 会调用实例的 onNewIntent() )。其效果相当于多个应用共享一个应用,不管谁激活该 Activity 都会进入同一个应用中。
设置启动模式的位置在 AndroidManifest.xml 文件中 Activity 元素的 android:launchMode 属性。

更多相关文章

  1. android中DownloadManager实现版本更新,监听下载进度实例
  2. Android(安卓)4.0 虚拟按键、手机模式、平板模式
  3. [Android] 全面了解Activity
  4. Android实现来电自动挂断实现机制
  5. Android(安卓)notification的使用实例
  6. 推荐大家一个好用的实现分页加载和下拉刷新Android工具包
  7. Android(安卓)Camera Framework Stream(二)
  8. Android(安卓)跳转到下个Activity并将当前Activity从栈中移除
  9. Square 开源库Flow和Mortar的介绍

随机推荐

  1. 初学者如何画好眼睛?漫画人物的眼睛的画法
  2. 用PDO扩展连接mysql数据库 实现用户登
  3. 追格商城小程序(开源版)V1.0.0正式发布下载
  4. 漫画武士刀怎么画?漫画里刀的画法
  5. 【北亚数据恢复】输入错误命令导致MySQL
  6. 白话linux操作系统原理
  7. TortoiseSVN 执行清理( cleanUp )失败的
  8. 初学Vue
  9. 初学Vue
  10. mysql使用PDO预处理访问数据库防sql语句