Android笔记——GridLayout布局

本文详细介绍了Android中的GridLayout布局,包括其主要属性如Orientation、RowCount、ColumnCount等,并探讨了GridLayout.LayoutParam的特有属性,如layout_column、layout_rowSpan等。通过示例代码和效果图,读者将能深入理解如何在Android应用中使用GridLayout进行复杂布局设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、GridLayout布局主要属性

     1、Orientation:布局方向(horizontal、vertical)

     2、RowCount:最大行数

     3、ColumnCount:最大列数

     4、useDefaultMargins:是否使用默认边距(内部组件之间的边距),默认是:false

     5、alignmentMode:对齐模式(边界对其、边距对其)

     6、rowOrderPreserved:行顺序保护(没有试过,不知道有什么用)

     7、columnOrderPreserved:列顺序保护(没有试过,大家可以试一试)


 二、GridLayout.LayoutParam 特有属性

     1、layout_column:所在列数

     2、layout_row  :所在行数

     3、layout_columnSpan:所跨列数

     4、layout_rowSpan:所跨行数

     5、layout_gravity:定义布局位置(在容器中的位置)

     6、layout_rowWeight:设置行的比重(可以平均切割行高),API21新加的属性,暂未试过

     7、layout_colunmWeight:设置列的比重(平均切割列宽),API22新加的属性,暂未试出来


三、示例代码

   

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:alignmentMode="alignMargins"
    android:columnCount="5"
    android:contentDescription="R"
    android:padding="10dp"
    android:useDefaultMargins="false"
    xmlns:app = "http://schemas.android.com/apk/res-auto" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_column="2"
        android:layout_gravity="top"
        android:layout_row="0"
        android:layout_rowSpan="2"
        android:background="@drawable/layout_shape_3"
        android:gravity="center"
        android:text="跨行"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:layout_column="0"
        android:layout_columnSpan="2"
        
        android:layout_gravity="top|center_horizontal"
        android:layout_row="0"
        android:background="@drawable/layout_shape_1"
        android:gravity="center"
        android:text="游戏"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_column="0"
      
        android:layout_gravity="top"
        android:layout_row="1"
        android:background="@drawable/layout_shape_3"
        android:gravity="center"
        android:text="提款"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_column="1"
        android:layout_columnWeight="2"
        android:layout_gravity="top"
        android:layout_row="1"
        android:background="@drawable/layout_shape_3"
        android:gravity="center"
        android:text="手机"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:layout_column="3"
        android:layout_columnSpan="2"
        android:layout_gravity="top"
        android:layout_marginLeft="14dp"
        android:layout_row="0"
        android:background="@drawable/layout_shape_1"
        android:gravity="center"
        android:text="户外"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textView6"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_column="3"
        android:layout_gravity="top"
        android:layout_row="1"
        android:background="@drawable/layout_shape_3"
        android:gravity="center"
        android:text="枕头"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textView7"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_column="4"
        android:layout_gravity="top|start"
        android:layout_row="1"
        android:background="@drawable/layout_shape_3"
        android:gravity="center"
        android:text="运动"
        android:textAppearance="?android:attr/textAppearanceLarge" />
   
</GridLayout>

四、效果图

    

     

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值