「喵神成长史」『布局篇』GridLayout(网格布局)

网格布局基本介绍

网格的内部放置矩形区域,区域内放置各种组件,大体上和TableLayout差不多。
一个网格有n列,那么就有n+1个列索引(column indices),列索引是由0到n,这里和数组很像,可以把每一列想成数组内的一个元素。
由于是4.0以后引入的布局,兼容方面肯定有问题。注意:向下兼容引用supportv7包。

GridLayout的功能:


- 可以自己设置布局中组件的排列方式
- 可以自定义网格布局有多少行,多少列
- 可以直接设置组件位于某行某列
- 可以设置组件横跨几行或者几列

重要的xml属性

网格容器的xml属性:

属性 说明
alignmentMode 设置布局管理器的对齐方式
columnCount 设置网格列数量
columnOrderPreserved 设置网格容器是否保留列序号
rowCount 设置网格行数量
rowOrderPreserved 设置网格管理器是否保留行序号
useDefaultMargins 设置布局管理器是否使用页边距

网格容器内子组件的xml属性:

属性 说明
layout_column 设置子组件在GridLayout的第几列
layout_columnSpan 设置子组件在GridLayout上横向上跨几列
layout_gravity 设置子组件用何种方式占据改网格空间
layout_row 设置子组件在GridLayout的第几行
layout_rowspan 设置子组件在GridLayout纵向上跨几行

代码:


<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:rowCount="6"
    android:columnCount="4"
     >
    
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_columnSpan="4"
        android:layout_marginLeft="4px"
        android:gravity="left"
        android:text="0"
        android:textSize="50dp"

        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_columnSpan="4"
        android:text="清除"
       />
    <Button
        android:text="1"
        />
    <Button
        android:text="2"
        />
    <Button
        android:text="3"
        />
    <Button
        android:text="+"
        />
    <Button
        android:text="4"
        />
    <Button
        android:text="5"
        />
    <Button
        android:text="6"
        />
    <Button
        android:text="-"
        />
    <Button
        android:text="7"
        />
    <Button
        android:text="8"
        />
    <Button
        android:text="9"
        />
    <Button
        android:text="*"
    />
    <Button
        android:text="."
    />
    <Button
        android:text="0"
        />
    <Button
        android:text="="
        />
    <Button
        android:text="/"
        />
GridLayout>

运行:
「喵神成长史」『布局篇』GridLayout(网格布局)_第1张图片

你可能感兴趣的:(「喵神成长史」『布局篇』GridLayout(网格布局))