你的位置:首页 > 操作系统

[操作系统]Fragment 整个生命周期


 

时间 2014-05-21 17:09:53 CSDN博客原文 http://blog.csdn.net/linfeng24/article/details/26491407

Fragment 生命周期主要体现在以下表中 13 个方法里,以下是按照 Fragment 从开始到销毁的先后执行顺序排序。

序号

方法名称

描述

1

public void onInflate(Activity activity, AttributeSet attrs,Bundle savedInstanceState)

在 Act ivity.onCreate 方法之前调用,可以获取除了View 之外的资源

2

public void onAttach(Activity activity)

当 f ragment 第一次与 Activity 产生关联时就会调用,以后不再调用

3

public void onCreate(Bundle savedInstanceState)

在 on Attach 执行完后会立刻调用此方法,通常被用于读取保存的状态值,获取或者初始化一些数据,但是该方法不执行,窗口是不会显示的,因此如果获取的数据需要访问网络,最好新开线程。

4

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState)

作用:创建 Fra gment 中显示的 view, 其中 inflater用来装载布局文件, container 表示 <fragment> 标签的父标签对应的 ViewGroup 对象, savedInstanceState可以获取 Fragment 保存的状态

5

public void onViewCreated(View view, Bundle savedInstanceState)

继上面后就会调用此方法

6

public void onActivityCreated(Bundle savedInstanceState)

在 Acti vity.onCreate 方法调用后会立刻调用此方法,表示窗口已经初始化完毕,此时可以调用控件了

7

public void onStart()

开始执行与控件相关的逻辑代码,如按键点击

8

public void onResume()

这是 Fr agment 从创建到显示的最后一个回调的方法

9

public void onPause()

当发生界面跳转时,临时暂停,暂停时间是 500ms ,0.5s 后直接进入下面的 onStop 方法

10

public void onStop()

当该方法返回时, Fra gment 将从屏幕上消失

11

public void onDestroyView()

当 fragm ent 状态被保存,或者从回退栈弹出,该方法被调用

12

public void onDestroy()

当 Fra gment 不再被使用时,如按返回键,就会调用此方法

13

public void onDetach()

Fragment 生命周期的最后一个方法,执行完后将不再与 Activity 关联,将释放所有 fragment 对象和资源