android - 如何在 4 个按钮上方居中布置 3 个按钮?

标签 android xml layout android-linearlayout android-relativelayout

我需要在居中的 4 个按钮行上方布置一个居中的 3 个按钮行:

          +------+    +------+    +------+
          |      |    |      |    |      |
          +------+    +------+    +------+

    +------+    +------+    +------+    +------+
    |      |    |      |    |      |    |      |
    +------+    +------+    +------+    +------+

所有按钮的大小都相同,并且两行的按钮间距应该相同。我可以使用嵌套的 LinearLayouts 轻松地做到这一点,但我想在没有嵌套布局 View 的情况下做到这一点。 (除了所有 advice to avoid nested layouts 之外,我还需要遍历代码中的按钮,使用平面布局会容易得多。)

如果行具有相同数量的按钮,我可以使用 RelativeLayout 执行此操作,但当按钮数量不同时我无法弄清楚。有没有一种方法可以使用其中一种库存布局 View (为此编写自定义布局 View 似乎很愚蠢)来进行平面布局?

最佳答案

这似乎不能在单一布局中完成。您不能使用相对布局,因为它不支持重力并且您需要 View 居中对齐。

自定义布局是这种情况的完美解决方案。真的没那么难。我经历了很多使用单一标准布局无法完成​​的简单案例。

关于android - 如何在 4 个按钮上方居中布置 3 个按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5135237/

相关文章:

android - BluetoothSerial cordova 插件回显写入

java - 以 XML 或 JSON 格式输出 Java 堆栈跟踪

xml - 遍历 XML 树获取属性值

java - 如何在 Spring XML 元数据配置中为 bean 设置 ServletContext 属性

java - 为整体 Android 设备设计

java - 如何调试 SWT 布局?

android - 拖动并移动在 Canvas 上绘制的圆圈

android - 减少(Android)电池时间的是什么?

android - 使用 ViewPager2 将方向更改为横向时显示两 block fragment

android - 在 onResume() 之前动态更改 DialogFragment Max_Height?