我们为什么要使用FrameLayout作为FragmentTransaction的片段容器? [重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

当我阅读有关支持Android不同屏幕尺寸的教程时,他们经常使用FrameLayout作为FragmentTransaction使用的片段的占位符。像这样:

getSupportFragmentMananager().beginTransaction()
.replace(R.id.frame_layout, fragment)

那我们为什么要使用FrameLayout呢?使用FrameLayout作为片段容器时有什么优点或缺点吗? (我已经尝试将RelativeLayout作为片段容器而且它仍然运行良好)。我是新手,所以我希望得到一个明确而彻底的答案。

编辑:我已阅读您提供的问题链接中的答案(可能重复)。但是,它缺乏明确的例子。我真的想要一个简单的例子来演示为什么我应该使用FrameLayout而不是其他布局类型。

android fragment
1个回答
2
投票

为了补充之前的答案,真正的asnwer就是这样,当您使用片段事务时,通常需要将片段添加到布局中的已保存点以供显示。您基本上希望看到这一个视图显示,FrameLayout是规范性首选项的原因直接与设计目的相关联。简单地说,所有其他布局主要用于多子包含。 FrameLayout可以更有效地处理单个子节点,因为除了重力分配之外没有特定的顺序。

© www.soinside.com 2019 - 2024. All rights reserved.