【问题标题】:Aligning three views in Android layout在 Android 布局中对齐三个视图
【发布时间】:2022-01-23 09:29:55
【问题描述】:

我有三个视图,它们的外观如下:

+-----++-------------------------+
|  1  ||                         |
+-----+|           3             |
+-----+|                         |
|  2  ||                         |
+-----++-------------------------+

到目前为止,一切都很好。不过……

有时 (3) 非常小,我希望它位于用于 (1) 和 (2) 的垂直空间的中心。

+-----+
|  1  |+-------------------------+
+-----+|          3              |
+-----+|                         |
|  2  |+-------------------------+
+-----+

其他时候,(3) 很大,我希望 (1) 与顶部 (3) 对齐,而 (2) 与 (3) 的底部对齐:

+-----++-------------------------+
|  1  ||                         |
+-----+|                         |
       |           3             |
       |                         |
+-----+|                         |
|  2  ||                         |
+-----++-------------------------+

我试过了:

  • 外部相对布局:(1) 和 (2) 在“small-3”情况下重叠
  • 包含 (1) 和 (2) 的线性布局(带和不带权重):顶部/底部的对齐方式在“big-3”中不起作用。
  • 外部线性布局(具有各种高度设置):我无法让案例 (2) 和 (3) 使用相同的设置。

为了提供一点上下文,(1) 和 (2) 是按钮,(3) 是不同大小的文本块。

在这一点上,我假设我遗漏了一些非常基本的设置(或小部件),这些设置(或小部件)将使这项工作按预期工作。

注意:我没有包含源代码,因为实际上已经尝试了十几种不同的配置,但都没有成功。

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    问这个问题很有帮助...很确定答案是使用 ConstraintLayout。

    【讨论】:

    • 尽管如此,我似乎无法让两个按钮对齐顶部/底部
    【解决方案2】:

    使用ConstraintLayout 并使用design 选项卡而不是在使用ConstraintLayout 时自己编写代码,它很容易实现您想要的。不要为此使用RelativeLayoutLinearLayout

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-07
      • 1970-01-01
      相关资源
      最近更新 更多