Android碎片(一)

来源:互联网 发布:剑三正太捏脸数据下载 编辑:程序博客网 时间:2024/06/05 22:33

Android是在Android3.0(API level 11)开始引入Fragment的。Fragment名为碎片,不过却和Activity十分相似,具有自己的生命周期,它是用来描述一些行为或一部分用户界面在一个Activity中,我们可以合并多个Fragment在一个单独的Activity中建立多个UI面板,或者重用Fragment在多个Activity中。

当开发的应用程序同时适用于平板电脑和手机时,可以利用Fragment实现灵活的布局,改善用户体验。如图:

img1

关于Fragment的生命周期,由于Fragment需要嵌入在Activity中使用,所以Fragment必须依赖Activity,也就是说当Fragment的生命周期和它所在的Activity是密切相关的。

如果Activity是暂停状态(Pause),其中所有的Fragment都是暂停状态(Pause);如果Activity是停止状态(stopped),那么这个Activity中所有的Fragment都不能被启动;如果Activity被销毁,那么它其中的所有Fragment都会被销毁。

但是,当Activity在活动状态,可以独立控制Fragment的状态,比如加上或者移除Fragment。

当这样进行fragment transaction(碎片切换)的时候,可以把fragment放入Activity的back stack(返回栈)中,这样用户就可以进行返回操作。就是在transaction提交前(commit前),加一句transaction.addToBackStack(null);即可。

下图为Fragment的生命周期整理笔记:

img2

0 0