1

我正在考虑构建一个具有与图片中相同的网格布局的应用程序,但我无法弄清楚我应该使用什么布局。

GridView,或类似的东西?

谷歌加

4

3 回答 3

2

可以使用 StaggeredGridView 。在 github 上查看以下 repos

https://github.com/maurycyw/StaggeredGridView

https://github.com/chrisjenx/StaggeredGridView/tree/master/demo

于 2013-01-16T16:28:12.457 回答
1

使用 LinearLayout 很简单:

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
  <!-- Stack rows vertically -->
  <LinearLayout android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content" >
    <!-- First row, two items -->
    <LinearLayout android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >
      <!-- First item, 50% of width -->
      <FooView android:id="@+id/foo1"
          android:layout_width="0px"
          android:layout_weight="1"
          android:layout_height="wrap_content" >
      <!-- Second item, 50% of width -->
      <FooView android:id="@+id/foo2"
          android:layout_width="0px"
          android:layout_weight="1"
          android:layout_height="wrap_content" >
    </LinearLayout>
    <!-- Next row, just one item -->
    <LinearLayout android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >
      <!-- Third item, 100% of width -->
      <FooView android:id="@+id/foo2"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content" >
    </LinearLayout>
    <!-- And so on... -->
  </LinearLayout>
</ScrollView>

显然,“FooView”的确切性质取决于您,装饰性边框、阴影等也是如此。在实践中,您希望以编程方式执行此操作,但这个静态 xml 布局向您展示了您所追求的。

GridLayout 也可以使用,但它仅在 4.0 及更高版本中可用,除非您想开始使用兼容性库。由于 LinearLayout 将完成这项工作,这就是我将使用的。RelativeLayout 可能也可以工作,但我自己从来没有让这该死的东西工作。

于 2013-01-16T19:31:31.677 回答
0

我不确定他们使用的是什么,但你可以使用 aGridLayout或 a来达到相同的效果ListView

于 2013-01-11T18:07:54.977 回答