Fragment的嵌套使用

Fragment的嵌套


在开发中遇到一些比较复杂的UI设计,以及一些需要动态替换的UI模块,这个时候一个Fragment已经很难满足这样的需求。

在Fragment中嵌套子Fragment成为了新的解决方法。

如何使用

Fragment嵌套子Fragment的用法与Avtivity嵌套Fragment类似,但由于两者生命周期的不同,所以仍然有一些不一样的地方。

1、在相应的Fragment布局文件中添加FrameLayout控件

Fragment的嵌套使用

2、在Fragment的onStart()方法中获取子Fragment的管理器

Fragment的嵌套使用

注意:getChildFragmentManager()不能在onActivityCreated中使用,因为此时的Fragment并没有运行,只是Activity启动了,

onStart()中Fragment开始运行,能够在自身中获得自己控件的管理器并对其进行操作。

3、进行子Fragment的初始化

Fragment的嵌套使用

4、展示需要的子Fragment隐藏其它的子Fragment

Fragment的嵌套使用

Fragment的嵌套使用

5、嵌套的子Fragment也有自己的布局文件,和普通的Fragment一样,能够对自己的控件进行操作

Fragment的嵌套使用

Fragment的嵌套使用