Android中的fragment

来源:互联网 发布:java培训机构可靠吗 编辑:程序博客网 时间:2024/05/18 02:41

1、Fragment简介:fragment是Android3.0引入的新API,fragment代表了activity的子模块,也可以说成activity的片段,但fragment却有自己的生命周期。

2、Fragment的生命周期:fragment总是必须被嵌入到一个activity中,它的生命周期直接受到宿主activity生命周期的影响。当activity处于resumed状态时,才可以操作fragment。fragment的生命周期与activity的生命周期很像,首先是activity的生命周期 

然后是fragment的生命周期:


把fragment和activity的生命周期对比来看:

不难看出fragment的一些特征

3、fragment的特征:

1)fragment总是作为activity界面的组成部分。Fragment可通过调用getActivity()方法来获取它所在的activity,activity可通过调用FragmentManager的findFragmentById()或findFragmentByTag()方法来获取Fragment。

2)当activity处于resumed的状态时,可通过调用FragmentManager的add()、remove()、replace()方法动态地添加、删除或替换Fragment。

3)一个activity可以组合多个fragment,同时一个fragment可以被多个activity复用。

4)fragment可以响应自己的输入事件,并拥有自己的生命周期,但它的生命周期受到所属的activity的生命周期控制。

4、创建fragment:

创建一个fragment,需要创建一个fragment的子类,通常至少实现以下的方法:

1)onCreate():系统创建fragment对象后会回调该方法,实现代码中只初始化想要在fragment中保持的必要组件,当fragment被暂停或者停止后可以恢复。

2)onCreateView():当fragment绘制界面组件时会回调该方法。该方法必须返回一个view,该view也就是该fragment所显示的view。

3)onPause():当用户离开该fragment时将会回调该方法。

5、fragment与activity通信:

将fragment添加到activity中有两种方式:

1)在布局文件中添加:


2)在Java代码中添加:

首先在布局文件中需要这样添加


在代码中要这样实现



0 0