【问题标题】:How are fragment activity layouts affected by main activity layout?主要活动布局如何影响片段活动布局?
【发布时间】:2015-10-13 14:51:51
【问题描述】:
在了解了 Android 开发并创建了一些基本应用程序之后,我开始将活动拆分为片段以实现可重用性。然而,我仍然有点困惑的一件事是主要活动(包含片段)的布局如何受到为片段活动定义的布局的影响,反之亦然。
虽然我相信布局会根据每个片段的高度和宽度的定义、活动中的片段数量等相互影响。但是我不确定是否还有其他我不知道的规则并且我想要了解为 Fragment 指定的布局是否直接影响主 Activity 的布局显示方式。
例如,主 Activity 有一个 RelativeLayout 并包含两个片段,它们在各自的单独布局 xml 文件中定义了 LinearLayout。 LinearLayouts 是否会影响 RelativeLayout 的正常显示方式,反之亦然?
【问题讨论】:
标签:
android
android-layout
android-fragments
【解决方案1】:
Fragment 在某些方面与其他视图(如 RelativeLayout 或 LinearLayout)基本相似。例如,它们也可以有宽度和高度;片段可以根据其子级的大小进行扩展。休息取决于您,您如何设计布局(片段)。 Fragment在某种意义上也类似于Activity,它有自己的xml布局和对应的java类。首先,我们以两种方式使用片段:
i) 一个或多个片段一次捕获活动的不同部分(空间)。
ii) 活动中的特定片段被许多其他片段以编程方式替换(添加、删除、替换)
【解决方案2】:
您可以在活动的布局文件中静态使用片段,也可以通过将它们添加到您也在活动的布局文件中定义的容器中动态地使用片段。
片段视图将被膨胀并显示在其容器中。这完全取决于您如何定义容器。如果你让它匹配其父级的宽度,片段的布局可以具有与容器的父级一样多的宽度。这就像将视图放入该容器中。