您的位置:首页 > 移动开发 > Android开发

Fragment详解(一):Fragment简介

2016-03-23 14:22 363 查看
Fragment是在Android3.0 (API 11)引入的,可以翻译为片段。Fragment拥有自己的生命周期,但是Fragement必须始终嵌入在 Activity 中,其生命周期直接受宿主 Activity 生命周期的影响。 例如,当 Activity 暂停时,其中的所有Fragment也会暂停;当 Activity 被销毁时,所有Fragement也会被销毁。 不过,当 Activity 正在运行时,您可以独立操纵每个Fragment,如添加或移除它们。 当您执行此类Fragment事务时,您也可以将其添加到由 Activity 管理的返回栈—Activity 中的每个返回栈条目都是一条已发生Fragment事务的记录。 返回栈让用户可以通过按“返回”按钮撤消Fragment事务(后退)。

Fragment设计的初衷主要是为了给大屏幕(如平板电脑)上增加动态和灵活的UI设计提供支持。由于平板电脑的屏幕比手机屏幕大得多,因此可以用于组合和交换UI组件的空间更大。利用Fragment实现此类设计时,你无需管理对视图层次结构的复杂更改。通过将Activity布局分成片段,你可以在运行时修改Activity的外观,并在由Activity管理的返回栈中保留这些更改。可能这样说有些抽象,我们结合官方给出的一张图片来说明一下。



常见的手机新闻类应用布局如上图右侧布局,其中第一个Activity用来展示新闻列表,当我们点击列表中的某项时会跳转到下一个Activity从而展示具体的新闻详情。

但是同样的应用在平板上在使用这样的设计就不太好了。因为平板的屏幕太大,这么大只展示一个列表未免太浪费了。所以设计上使用如上图左侧的布局来展示,其结构是Activity中包含了两个Fragment(左右),其中左侧的Fragment用于展示新闻列表,右侧的Fragment用于展示详细新闻内容。当我们点击新闻列表的时候右侧的Fragment会动态的更改内容。

采用了Fragment将屏幕分为不同的片段,合理的利用了整个屏幕,同时大大的提升了用户体验。一举多得啊。

关于Fragment设计思想就撤这么多吧,大家可以发散思维,发觉更多的用法,接下来我们还是看看Fragment到底是怎样使用的吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息