Osheep

时光不回头,当下最重要。

Fragment

1.碎片(Fragment)

一种可以嵌入在活动中的 UI 片段,

2.生命周期:

2.1 碎片的状态和回调

运行状态,暂停状态,停止状态,销毁状态

1.运行状态

碎片是可见的,并且它所关联的活动正处于运行状态时,该碎片也处于运行状态。

2.暂停状态

当一个活动进入暂停状态时,(由于另一个未占满屏幕的活动被添加到了栈顶),与它相关联的可见碎片就会进入到暂停状态。

3.停止状态

当一个活动进入停止时,与它相关联的碎片就会进入到停止状态,或者通过调用 FragmentTransaction 的 remove()、replace() 方法将碎片从活动中移除,但如果在事务提交之前调用 addToBackStack()方法,这时的碎片也会进入到停止状态。总的来说,进入停止状态的碎片对用户来说是完全不可见的,有可能会被系统回收。

4.销毁状态

碎片总是依附于活动而存在的,因此活动销毁与它相关联的碎片也销毁。或者通过调用 FragmentTransaction 的 remove()、replace() 方法将碎片从活动中移除,在事务提交之前并没有调用 addToBackStack() 方法,这时的碎片也会进入到销毁状态。

Fragment 类中也提供了一系列的回调方法,以覆盖碎片生命周期的每个环节。活动有的回调方法,碎片中几乎都有,碎片还附加一些回调方法。

    onAttach()     当碎片和活动建立关联时调用

    onCreateView()    为碎片创建视图(加载布局)时调用

    onActivityCreated()    确保与碎片相关联的活动一定已经创建完毕的时候调用

    onDestroyView()    当与碎片关联的视图被移除的时候调用

    onDetach()    当碎片和活动解除关联的时候调用。

《Fragment》

碎片的生命周期

三.动态加载布局

3.1 使用限定符

Qualifiers

Android 常见的限定符

《Fragment》

《Fragment》

3.2  使用最小宽度限定符

有时我们希望可以更加灵活地为不同设备加载布局,不管它们是不是被系统认定为 large ,这时就可以使用最小宽度限制符(Smallest-widthQualifier)了

最小宽度限制符允许我们对屏幕的宽度指定一个最小值(dp为单位),然后以这个最小值为临界点,屏幕宽度大于这个值的设备就加载一个布局,屏幕宽度小于这个值的设备就加载另一个布局。

4.实践:简易版的新闻应用

以上,日后继续补充

点赞