我怎样才能改变这个Android布局?

时间:2015-02-15 11:51:11

标签: android layout

布局图片:

http://s18.postimg.org/kihvabse1/Capture.jpg

上面给出的是我创建的android界面如何在布局中获取这些按钮,因为你可以在右上角看到它没有显示整个按钮

XML代码:

<ScrollView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/scrollView" >

    <GridLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/gridLayout"
        android:layout_centerInParent="true">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button"
            android:layout_row="0"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button2"
            android:layout_row="0"
            android:layout_column="1"
            android:layout_gravity="center_vertical|fill_vertical"
            android:layout_rowSpan="2" />

        <Button
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button3"
            android:layout_row="0"
            android:layout_column="2"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical"  />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button4"
            android:layout_row="3"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="fill_horizontal|center"
            android:layout_columnSpan="2" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button5"
            android:layout_row="4"
            android:layout_column="2"
            android:layout_gravity="center_vertical|fill_vertical" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="119dp"
            android:text="New Button"
            android:id="@+id/button6"
            android:layout_row="6"
            android:layout_column="0"
            android:layout_gravity="center|fill" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button7"
            android:layout_row="6"
            android:layout_column="1"
            android:layout_gravity="fill_horizontal|center"
            android:layout_columnSpan="2" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button8"
            android:layout_row="10"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button9"
            android:layout_row="10"
            android:layout_column="1"
            android:layout_rowSpan="1"
            android:layout_gravity="center_vertical|fill_vertical" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button10"
            android:layout_row="10"
            android:layout_column="2"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button11"
            android:layout_row="12"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="fill_horizontal|center"
            android:layout_columnSpan="2" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button12"
            android:layout_row="13"
            android:layout_column="2"
            android:layout_gravity="center_vertical|fill_vertical" />


    </GridLayout>
</ScrollView>

2 个答案:

答案 0 :(得分:1)

要实现此布局,您可以采用两种方式:

  1. 使用SymmetricGridview并自定义它。我希望它能奏效。 https://github.com/felipecsl/AsymmetricGridView

  2. 使用列表视图并使用适配器。在适配器中膨胀此视图

    位置1:使用第一个布局并膨胀数据。 位置2:使用第二个布局并膨胀数据。 位置3:使用第三种布局并膨胀数据。

  3. 根据您的位置值管理您的数据。 我希望以上几点有所帮助。

答案 1 :(得分:0)

外部布局可以是简单的LinearLayout,垂直orientation

在该布局中,为行设置水平LinearLayouts。在它们中放置按钮,weight来控制它们的宽度比。