Fragment和Activity的生命周期图
对应
Fragment
方法名称 | 描述 |
---|---|
public void onInflate(Activity activity, AttributeSet attrs,BundlesavedInstanceState) | 在Activity.onCreate方法之前调用,可以获取除了View之外的资源 |
public void onAttach(Activity activity) | 当fragment第一次与Activity产生关联时就会调用,以后不再调用 |
public void onCreate(Bundle savedInstanceState) | 在onAttach执行完后会立刻调用此方法,通常被用于读取保存的状态值,获取或者初始化一些数据,但是该方法不执行,窗口是不会显示的,因此如果获取的数据需要访问网络,最好新开线程。 |
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) | 作用:创建Fragment中显示的view,其中inflater用来装载布局文件,container表示标签的父标签对应的ViewGroup对象,savedInstanceState可以获取Fragment保存的状态 |
public void onViewCreated(View view, Bundle savedInstanceState) | 继上面后就会调用此方法 |
public void onActivityCreated(Bundle savedInstanceState) | 在Activity.onCreate方法调用后会立刻调用此方法,表示窗口已经初始化完毕,此时可以调用控件了 |
public void onStart() | 开始执行与控件相关的逻辑代码,如按键点击 |
public void onResume() | 这是Fragment从创建到显示的最后一个回调的方法 |
public void onPause() | 当发生界面跳转时,临时暂停,暂停时间是500ms,0.5s后直接进入下面的onStop方法 |
public void onStop() | 当该方法返回时,Fragment将从屏幕上消失 |
public void onDestroyView() | 当fragment状态被保存,或者从回退栈弹出,该方法被调用 |
public void onDestroy() | 当Fragment不再被使用时,如按返回键,就会调用此方法 |
public void onDetach() | Fragment生命周期的最后一个方法,执行完后将不再与Activity关联,将释放所有fragment对象和资源 |