当我阅读有关支持Android不同屏幕尺寸的教程时,他们经常使用FrameLayout作为FragmentTransaction使用的片段的占位符。像这样:
getSupportFragmentMananager().beginTransaction()
.replace(R.id.frame_layout, fragment)
那么我们为什么要使用FrameLayout?使用FrameLayout作为片段容器时有什么优点或缺点吗? (我已经尝试将RelativeLayout作为片段容器,而且它仍然运行良好)。我是新手,所以我希望得到一个明确而彻底的答案。
编辑:我已阅读您提供的问题链接中的答案(可能重复)。但是,它缺乏明确的例子。我真的想要一个简单的例子来演示为什么我应该使用FrameLayout而不是其他布局类型。
答案 0 :(得分:2)
为了补充上一个答案,真正的asnwer就是这样,当您使用片段事务时,通常需要将片段添加到布局中的已保存点以供显示。您基本上希望看到这一个视图显示,FrameLayout是规范性首选项的原因直接与设计目的相关联。简单地说,所有其他布局主要用于多子包含。 FrameLayout可以更有效地处理单个子节点,因为除了重力分配之外没有特定的顺序。