美文网首页
Android之Activity中一些操作对生命周期的影响

Android之Activity中一些操作对生命周期的影响

作者: 木木禾木 | 来源:发表于2019-02-19 16:07 被阅读0次

    Activity的生命周期:
    onCreate ——> onStart ——> onResume ——> onAttachedToWindow ——> onPause ——> onStop ——> onDestroy ——> onDetachedFromWindow

    Fragment的生命周期:
    onAttach ——> onCreate ——> onCreateView ——> onViewCreated ——> onActivityCreated ——> onStart ——> onResume ——> onPause ——> onStop ——> onDestroyView ——> onDestroy ——> onDetach

    那么,Activity中的一些操作会对生命周期造成怎样的影响呢,跟着镜头一起走进Android不归路...

    1. Activity-A中按home键进入后台或切到多任务页面:
      A-onPause ——> A-onStop
      从后台或多任务返回:
      A-onStart ——> A-onResume

    2. Activity-A锁屏
      A-onPause ——> A-onStop
      解锁屏幕:
      A-onStart ——> A-onResume

    3. Activity-A中启动Activity-B :
      启动:
      A-onPause ——> B-onCreate ——> B-onStart ——> B-onResume ——> B-onAttachedToWindow ——> A-onStop
      Activity-B中点击返回键:
      B-onPause ——> A-onActivityResult ——> A-onStart ——> A-onResume ——> B-onStop ——> B-onDestroy ——> B-onDetachedFromWindow

    4. Activity-A中下拉通知栏:
      生命周期无变化

    5. Activity-A中弹出Dialog 或 DialogFragment:
      生命周期无变化

    6. Activity-A中弹出PopupWindow:
      生命周期无变化

    7. Activity-A中弹出Toast:
      生命周期无变化

    8. 在Activity的onCreate中通过 replace(int resId, Fragment fragment) 装载Fragment:
      activity-onCreate ——> fragment-onAttach ——> fragment-onCreate ——> fragment-onCreateView ——> fragment-onViewCreated ——> fragment-onActivityCreated ——> fragment-onStart ——> activity-onStart ——> activity-onResume ——> fragment-onResume ——> activity-onAttachedToWindow
      点击返回键:
      fragment-onPause ——> activity-onPause ——> fragment-onStop ——> activity-onStop ——> fragment-onDestroyView ——> fragment-onDestroy ——> fragment-onDetach ——> activity-onDestroy ——> activity-onDetachedFromWindow

    9. 弹出权限申请框时


      A-onPause
      弹出框关闭:
      A-onResume

    最后,附上个人测试所用的 TestLifeCycle源码~

    相关文章

      网友评论

          本文标题:Android之Activity中一些操作对生命周期的影响

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