如何将我的按钮宽度设置为" wrap_content" GridLayout里面?

时间:2018-03-05 19:45:31

标签: android android-gridlayout

我的按钮在gridlayout中溢出,因为它们的长度从一开始就不必要地长。我只想将wrap_content设置为所有这些。我在做this教程。这是我的代码。

<GridLayout
    android:id="@+id/characterLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/keyOptionLayout"
    android:layout_below="@id/tvLotteryNumber"
    android:background="#33000000"
    android:columnCount="5"
    android:orientation="horizontal">

    <Button
        android:layout_row="0"
        android:text="a" />

    <Button
        android:layout_row="0"
        android:text="b" />

    <Button
        android:layout_row="0"
        android:text="c" />

    <Button
        android:layout_row="0"
        android:text="d" />

    <Button
        android:layout_row="0"
        android:text="e" />

</GridLayout>

删除android_layout_row="0"行并不会改变任何内容。 这是他们的表现方式。

enter image description here

2 个答案:

答案 0 :(得分:0)

您可以添加

android:layout_width="0dp"
 android:layout_height="0dp'

到您的按钮并添加

grid:layout_columnWeight="1"
grid:layout_rowWeight="1"

到您的按钮。 不要忘记将xmlns:android="http://schemas.android.com/apk/res/android" 名称添加到GridLayout

答案 1 :(得分:0)

使用android.support.v7.widget.GridLayout解决了这个问题。

  1. 在Gradle中,compile 'com.android.support:gridlayout-v7:25.3.1'
  2. 我将代码更改为this问题的正确答案。
  3. <强>结果:

    enter image description here