美文网首页
Activity启动模式 以及栈

Activity启动模式 以及栈

作者: coder_斛律光 | 来源:发表于2018-04-19 23:48 被阅读9次

一道面试题 A-B-C-D-(B)-C-D现在要回到第二个B的位置

launchMode

  • singleInstance
  1. getTaskId 和启动他的不一样 单独的一个栈
  2. 只有一个 你在重新启动他也是原来那个
  3. 如果他在跳到一个启动模式不是SingleInstance的这个时候要切换栈 在返回的时候 要把切换到的那个栈的所有的遍历完 才在到他这
  4. 3的例子 a-b-c 栈8001 -d 新栈 8002 -e新栈 8003 -c切回去 然后返回
    c-b-a 切 -e 切 -d 结束
  • singleTask
  1. getTaskId和启动他的那个一样
  2. 不是一个栈的如果启动他也没关系 不会重新创建但是 他会把栈内在他上边的Activity都出栈(清除掉 我理解的)这时候有一个区别
  3. 如果你不指定 那他不会新建一个栈 而是去找
  1. 把栈顶的清除掉
  2. 不是同一个栈的 那首先要切栈 然后把他栈顶的清除掉

launchFlags

相关文章

网友评论

      本文标题:Activity启动模式 以及栈

      本文链接:https://www.haomeiwen.com/subject/phogkftx.html