天天看点

《第一行代码》第二版 学习总结3 活动的四种启动模式

      最近利用下班时间,找了看什么书比较适合初学android的朋友,很多人推荐了《第一行代码》这本书,于是就买了一本,感觉看书,思考,动手,再思考和总结这样过程还是很有必要的,于是就打算把自己学习的东西简单的总结一下;方便自己以后查找,也有利于学习的巩固。在这里首先要感谢一下书籍的作者——郭霖前辈

      关于活动启动模式这一块,之前一直没有写,平时也基本上用的都是默认的启动模式,主要还是对其他三种模式理解不深,即便用了也不能够很好的把控,所以今天也只是给出自己很浅显的概念介绍和相应的示例代码

1,活动的四种启动模式

      活动的管理是由任务栈来控制的,通常一个应用有一个任务栈来管理所有的活动,当其中某个活动需要与其他应用共享时,可能就需要单独的放在另一个任务栈中(可以通过SingalInstance方式开启活动实现),不同的其他方式就决定了任务栈管理活动的方式是不一样的。

  • (1)Standard标准开启方式:这种方式也是默认的活动开启方式,就是不管任务栈中有没有该活动实例以及该实例处在任何位置,只要重新开启的该活动,都会重新创建一个该活动实例并置于栈顶位置
  • (2)SingalTop开启方法:这种方式开启活动的特点时,当任务栈中有要开启的活动的实例并且该实例又处于栈顶位置时,活动实例就不会重新创建,其他的情况同(1)。
  • (3)SingalTask开启方式:这种是开启活动的特点是只要任务栈中有要开启的活动实例,则都不会重新创建该活动实例,只会执行任务栈该活动实例的onRestart()方法,当然排在其前面的任务都会销毁
  • (4)SingalInstance开启方式:这种方式开启活动的特点是它会重新开启一个任务栈,并创建要开启的活动的实例将其放在新建的任务栈中。

2,示例代码

      本次的代码内容可能会较多,并且做了简单的分包处理,但是都很简单,主要为了演示效果,所以写的详细了一点,具体要表达的东西就是上面的四点,只是下面的代码进行了简单的验证。

      点击下载(真心不是要积分)

3,运行结果

第一步:运行程序                             

《第一行代码》第二版 学习总结3 活动的四种启动模式

第二步:点击“标准模式测试”按钮

《第一行代码》第二版 学习总结3 活动的四种启动模式

第三步:随意点击几次“再次开启本活动”按钮,并通过不断点击返回键直至返回应用首页

《第一行代码》第二版 学习总结3 活动的四种启动模式

第四步:点击“SingalTop模式测试”按钮

《第一行代码》第二版 学习总结3 活动的四种启动模式

第五步:随意点击几次“再次开启本活动”按钮,然后在点击“开启第二个活动”按钮,再在开启的第二个活动界面点击“开启第一个活动”按钮,然后在不停的按返回键直至到应用首页

《第一行代码》第二版 学习总结3 活动的四种启动模式

第六步:点击“SingalTask模式测试”按钮

《第一行代码》第二版 学习总结3 活动的四种启动模式

第七步:操作同第五步一样即可

《第一行代码》第二版 学习总结3 活动的四种启动模式

第八步:点击“singalInstance模式测试”按钮

《第一行代码》第二版 学习总结3 活动的四种启动模式

第九步:进入子页面之后一直往下点击按钮,直至第四个页面没有按钮,然后一直返回直至应用首页

《第一行代码》第二版 学习总结3 活动的四种启动模式

注:欢迎扫码关注

《第一行代码》第二版 学习总结3 活动的四种启动模式

继续阅读