-2

我想在 android 中创建一个网格,其中假设

  1. 如果我传递一个包含 5 个元素的数组列表,第一行应该有 3 列,下一行应该有 2 列居中
  2. 如果我传递一个包含 6 个元素的数组列表,第一行应该有 3 列,下一行应该有 3 列
  3. 如果我传递一个包含 7 个元素的数组列表,第一行应该有 3 列,下一行应该有 3 列,下一行应该有 1 列居中
4

1 回答 1

4

我建议你使用FlexBoxLayout. 它与 CSS 类似,FlexBox完全符合您的需求。

只需将依赖添加到 Gradle:

dependencies {
    compile 'com.google.android:flexbox:0.2.3'
}

将布局放入 .xml 文件中:

<com.google.android.flexbox.FlexboxLayout/>

并动态添加视图的子项:

flexBox.addView(child);
于 2016-09-29T12:50:11.767 回答