首页 > 移动平台 > 详细

Android Activity 启动模式

时间:2014-11-25 18:28:04      阅读:279      评论:0      收藏:0      [点我收藏+]

启动模式类别

  • standard:每次启动activity都会创建新的实例对象。activity可以在多个不同的任务中被实例化多个对象。
  • singleTop:如果当前任务栈顶有activity的实例对象,则调用onNewIntent()获取当前实例对象,否则在当前任务栈中实例化新对象。
  • singleTask:任务栈的只有一个activity实例对象,如果已存在activity实例对象则调用onNewIntent()获取当前实例对象。
  • singleInstance:由系统创建新的任务栈并维护唯一的activity实例对象

定义启动模式

  1. 配置manifest文件:定义标签的launchMode属性值(standard,singleTop,singleTask,singleInstance),默认值是standard

  2. 设置Intent的flag变量:设置Intent的flag字段值(FLAG_ACTIVITY_NEW_TASK,FLAG_ACTIVITY_SINGLE_TOP,FLAG_ACTIVITY_CLEAR_TOP)

    • FLAG_ACTIVITY_NEW_TASK:standard启动模式
    • FLAG_ACTIVITY_SINGLE_TOP:singleTop启动模式
    • FLAG_ACTIVITY_CLEAR_TOP:如果当前任务栈中已有activity实例对象,则清空上面的其他activity并调用onNewIntent()激活此实例对象

清空任务栈

默认情况下,当某一任务长时间不使用时,Android系统会情况当前任务中除了跟activity之外的所有activity。

  • alwaysRetainTaskState:当任务栈的跟activity的属性值设置true后,即使长时间离开某一任务,系统依然保留所有activity
  • clearTaskOnLaunch:当任务栈的跟activity的属性值设置true后,用户离开此任务后,就会清空此任务栈中的所有activity
  • finishOnTaskLaunch:正对当前activity有效,当用户离开此任务后,此activity不在恢复离开前的状态

Android Activity 启动模式

原文:http://www.cnblogs.com/bennyyuan/p/4121445.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!