2024年3月21日发(作者:)

Fragment api文档翻译 孙海龙 2014-03-22整理

Fragment api文档翻译

第1节. 概述

1.1特性

Fragment是activity的界面中的一部分或一种行为。可以把多个Fragment组合到一个activity

中来创建一个多面界面并且可以在多个activity中重用一个Fragment。可以把Fragment认为模

块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被

添加或删除。

Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的

activity的影响。

例如:当activity暂停时,它拥有的所有的Fragment都暂停了,当activity销毁时,它拥有的

所有Fragment都被销毁。

然而,当activity运行时(在onResume()之后,onPause()之前),可以单独地操作每个

Fragment,比如添加或删除它们。

当在执行上述针对Fragment的事务时,可以将事务添加到一个栈中,这个栈被activity管理,

栈中的每一项都是一个Fragment的一次事务。

有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键

(向后导航)。

当向activity中添加一个Fragment时,它须置于ViewGroup控件中,并且需定义Fragment自

己的界面。

可以在layout的xml文件中声明Fragment,元素为:;也可以在代码中创建

Fragment,然后把它加入到ViewGroup控件中。

然而,Fragment不一定非要放在activity的界面中,它可以隐藏在后台为actvitiy工作。

1 / 20

Fragment api文档翻译 孙海龙 2014-03-22整理

图1:示例:如何将fragments定义的两种UI模块组合,针对平板分屏显示在一个activity

中,但是针对手持设备(手机等)分别显示在不同的Activity中。

2 / 20