Android--Fragment基本介绍
Posted ljbguanli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android--Fragment基本介绍相关的知识,希望对你有一定的参考价值。
android是在Android 3.0 (API level 11)開始引入Fragment的。
能够把Fragment想成Activity中的模块,这个模块有自己的布局。有自己的生命周期,单独处理自己的输入,在Activity执行的时候能够载入或者移除Fragment模块。
能够把Fragment设计成能够在多个Activity中复用的模块。
当开发的应用程序同一时候适用于平板电脑和手机时,能够利用Fragment实现灵活的布局,改善用户体验。
如图:
Fragment的生命周期
由于Fragment必须嵌入在Acitivity中使用,所以Fragment的生命周期和它所在的Activity是密切相关的。
假设Activity是暂停状态,当中全部的Fragment都是暂停状态;假设Activity是stopped状态。这个Activity中全部的Fragment都不能被启动。假设Activity被销毁,那么它当中的全部Fragment都会被销毁。
可是,当Activity在活动状态,能够独立控制Fragment的状态,比方加上或者移除Fragment。
当这样进行fragment transaction(转换)的时候,能够把fragment放入Activity的back stack中。这样用户就能够进行返回操作。
能够看到Fragment比Activity多了几个额外的生命周期回调方法:
onAttach(Activity)
当Fragment与Activity发生关联时调用。
onCreateView(LayoutInflater, ViewGroup,Bundle)
创建该Fragment的视图
onActivityCreated(Bundle)
当Activity的onCreate方法返回时调用
onDestoryView()
与onCreateView想相应,当该Fragment的视图被移除时调用
onDetach()
与onAttach相相应,当Fragment与Activity关联被取消时调用
注意:除了onCreateView,其它的全部方法假设你重写了。必须调用父类对于该方法的实现,
3、静态的使用Fragment
嘿嘿。最终到使用的时刻了~~
这是使用Fragment最简单的一种方式。把Fragment当成普通的控件。直接写在Activity的布局文件里。
步骤:
1、继承Fragment,重写onCreateView决定Fragemnt的布局
2、在Activity中声明此Fragment。就当和普通的View一样
以下展示一个样例(我使用2个Fragment作为Activity的布局,一个Fragment用于标题布局,一个Fragment用于内容布局):
TitleFragment的布局文件:
TitleFragment
同理还有ContentFragment的其布局文件: