我该如何更改此 android 布局?

How can i change this 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>

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

  1. 使用 SymmetricGridview 并对其进行自定义。我希望它会起作用。 https://github.com/felipecsl/AsymmetricGridView

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

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

并根据您的职位价值管理您的数据。 我希望以上观点会有所帮助。

外部布局可以是简单的LinearLayout with vertical orientation

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