android基础知识——Fragment

时间:2021-05-29 19:14:42

1、Fragment可以作为Activity界面的一部分;

2、一个Activity可以包含多个Fragment,一个Fragment也可以在多个Activity中使用;

3、Activity运行过程中,可以添加、删除或替换Fragment;

4、Fragment可以响应自己的输入事件,并且拥有自己的生命周期,但是受宿主Activity的生命周期影响。


Fragment 生命周期图示:

android基础知识——Fragment

onAttach()

当Fragment被添加到Activity时候会回调这个方法,并且只回调一次

onCreate()

创建Fragment的时候会回调这个方法,并且只调用一次

onCreateView()

创建与Fragment对象关联的View视图时调用。

onActivityCreated()

当Fragment所在的Activity启动完成,也就是当Activity对象完成自己的onCreate方法时调用这个方法

onStart()

Fragment对象在ui可见时调用

onResume()

Fragment对象的ui可以与用户交互时调用

onPause()

Fragment对象可见,但不可交互。也就是Activity对象转为onPause状态时调用

onStop()

有空间完全遮挡;或者宿主Activity对象转为onStop状态时调用。

onDestroyView()

销毁Fragment对象所包含的view资源时调用,也就是移除fragment中的视图

onDestroy()

销毁Fragment对象时调用

onDetach()

Fragment从Activity中删除时会调用


锁屏——解锁,Fragment生命周期变化:

onPause()——onStop()

onStart()——onResume()


Fragment生命周期和Activity生命周期的对比:

android基础知识——Fragment


Fragment与Activity通信:

1、Fragment可调用getActivity()方法获取它所在的Activity;

2、Activity可调用FragmentManager的findFragmentById()或findFragmentByTag()方法获取Fragment。