Fragment(一)——Fragment优点和生命周期

前言

之前在讲 DialogFragment 知识的时候,对Fragment有一个大致的讲解。但由于Fragmnet作为Activity内部一个比较重要的组件,在日常构建app的时候具有重要作用。其原理,生命周期,使用方式,与activity交互等,有很多需要梳理的地方。于是这里决定对Fragment做一个整理的讲解,以帮助自己梳理下系统知识吧。
本文参考以下资料,在此表示感谢
Android Fragment 真正的完全解析

今天涉及的内容:

  1. Fragment的优点
  2. Fragment生命周期

今天讲的内容比较少,主要是为了让自己对Fragment有一个重新的认识,下面开始吧。

一. Fragment的优点

Fragment 的优点已经是老生常谈了,最初提出来的时候,是为了解决 app在平板和手机上显示的兼容性。Fragment 虽然是基于 Activity 内部使用,但是它却拥有自己的生命周期,有自己的界面,甚至可以向activity一样与用户产生交互。其拥有activity的功能的同时,却在启动销毁的时候比 activity 消耗更小的开销,这点简直棒极了。

二. Fragment生命周期

谈到 Fragment,就必须得谈谈 Fragment 的生命周期问题了,之前在写 DialogFragment 的时候,有发过一张Fragment 生命周期的图,但是在今天看关于 Fragment 的相关知识点的时候,发现了一张更好的图,它不仅讲述了Fragment自己的生命周期,还阐明了Fragment生命周期和Activity生命周期的关系。图如下:


1.png

相信看了上面这张图以后,对于Fragmnet的生命周期会理解不少。
可以大致看下Fragmnet 相对 Activity 多了以下几个方法:

//当Fragment与Activity发生关联时调用
onAttach(Activity)

//创建该Fragment的视图
onCreateView(LayoutInflater, ViewGroup,Bundle)

//当Activity的onCreate方法返回时调用
onActivityCreated(Bundle)

//与onCreateView想对应,当该Fragment的视图被移除时调用
onDestoryView()

//与onAttach相对应,当Fragment与Activity关联被取消时调用
onDetach()

ok,今天关于 Fragment 生命周期的问题,就讲到这里吧。