美文网首页
Activity的读书笔记(二)

Activity的读书笔记(二)

作者: wjinglee | 来源:发表于2018-02-26 22:11 被阅读0次

    Activity的生命周期

    Activity的活动状态

    running/paused/stop/kill

    • Running: 用户可以点击屏幕,且屏幕会做出相应的反应,活动处于activity任务栈栈顶,是最不可能被回收的activity。

    • Paused: 活动失去焦点(被一个对话框、一个非全屏或透明的activity占据栈顶),导致当前activity处于暂停状态,活动处于任可见状态,但已失去交互功能。当系统内存紧张时,才会回收这个状态下的activity。

    • Stopped: 当另一个活动完全覆盖当前活动,当前活动不再处于栈顶,且不可见,则是处于Stopped,系统内存较低时,才会回收这个状态的活动。

    • Killed: Activity已被系统回收,activity的成员变量等信息已经不存在了.

    Activity的生存期

    • 完整生存期: onCreate() ~ onDestroy(), 在onCreate() 中完成初始化操作, onDestroy() 中释放内存。
    • 可见生存期: onStart() ~ onStop(), 在这个期间,活动对于用户是可见的,但是可能不能与用户进行交互, 在onStart() 中对资源进行加载, 在 onStop() 中对资源进行释放, 来保证停止状态下活动不会占用太多内存。
    • 前台生存期: onResumr() ~ onPause(), 在这个阶段,活动总是处于运行阶段,此时活动是可以和用户进行交互的。

    Activity的启动模式

    • Standard (标准模式) : 每次启动一个activity,都会创建一个新的activity的实例,并将它加到任务栈中。不考虑是否已经有这个activity的实例。
    • SingleTop (栈顶复用) : 如果要开始的activity已经位于栈顶,则再次复用这个activity
    • SingleTask (栈内复用):如果要开始的activity已经在栈内,则将这个activity以上的activity全部移出栈,并将这个activity置于栈顶.
    • SingleInstance (单实例模式):用一个全新的栈来管理这个activity。

    下一篇我们再接着讨论fragment吧^^
    送大家一朵大勋❀

    相关文章

      网友评论

          本文标题:Activity的读书笔记(二)

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