本身属性
子元素属性
效果图:
xml:
需要注意的问题:
1.在子元素如果不设置 android:layout_width 与 android:layout_height 为 "0dp" 那么子元素在配合 android:layout_rowWeight="1" 与 android:layout_columnWeight="1" 属性时将不会起作用,这时候会出现子元素超出 GridLayout 布局的问题。
2.需要子元素撑满剩余布局空间时,需要设置 android:layout_gravity="fill"
<?xml version="1.0" encoding="utf-8"?><!--数字输入盘--> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="152dp" android:background="@color/snakecommon_color_181B23"> <GridLayout android:layout_width="0dp" android:layout_height="0dp" android:columnCount="10" android:rowCount="2" android:paddingTop="15dp" android:paddingBottom="15dp" android:paddingLeft="18dp" android:paddingRight="18dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent"> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="1" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="2" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="3" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="4" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="5" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="6" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="7" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="8" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="9" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <Button android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnWeight="1" android:background="@drawable/snake_shape_white_rectangle_10dp" android:text="0" android:layout_marginStart="2.5dp" android:layout_marginEnd="2.5dp" android:textColor="@color/snakecommon_color_FFFFFF" android:textSize="18sp" /> <ImageView android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnSpan="5" android:layout_gravity="fill" android:paddingVertical="10dp" android:layout_marginTop="10dp" android:background="@drawable/snake_shape_white_rectangle_10dp" android:src="@drawable/snake_ic_delete" /> <ImageView android:layout_width="0dp" android:layout_height="0dp" android:layout_rowWeight="1" android:layout_columnSpan="5" android:layout_gravity="fill" android:paddingVertical="10dp" android:layout_marginTop="10dp" android:layout_marginLeft="5dp" android:background="@drawable/snake_shape_white_rectangle_10dp" android:src="@drawable/snake_ic_yes" /> </GridLayout> </androidx.constraintlayout.widget.ConstraintLayout>
End
原文:https://www.cnblogs.com/guanxinjing/p/14744406.html