我正在考虑构建一个应用程序,它将具有与图片中相同的网格布局,但我无法弄清楚应该使用哪种布局。
GridView,还是那样的?
答案 0 :(得分:2)
可以使用StaggeredGridView。在github上查看下面的repos
https://github.com/maurycyw/StaggeredGridView
https://github.com/chrisjenx/StaggeredGridView/tree/master/demo
答案 1 :(得分: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可能也会起作用,但我自己从来没有能够得到该死的东西。
答案 2 :(得分:0)
我不确定他们使用的是什么,但您可以使用GridLayout
或ListView
达到相同的效果。