原创 GridLayout:网格布局管理器的使用

2021-4-8 16:51 385 3 4 分类: 软件与OS 文集: android studio

网格布局管理器是 Android 4.0以后新增加的布局管理器。网格布局管理器将容器划分为行x列的网格,每个控件置于网格中,当然也可以通过设置相关属性使一个控件占据多行或多列.

 

GridLayout 实例及属性详解

 

GridLayout常用属性

android:rowCount="4"  设置网格布局有4

android:columnCount="4" 设置网格布局有4

android:layout_row="1"  设置组件位于第2

android:layout_column="2"  设置该组件位于第3

android:layout_rowSpan="2"  设置纵向横跨2

android:layout_columnSpan ="3"  设置横向横跨 3

 

布局文件实例如下:

xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:rowCount="6"
    android:columnCount="4"
    android:orientation="horizontal">
    <TextView
        android:layout_columnSpan="4"
        android:text="0"
        android:textSize="60sp"
        android:layout_marginRight="5dp"
        android:layout_marginLeft="5dp"/>
    <Button
        android:text="回退"
        android:layout_columnSpan="2"
        android:layout_gravity="fill"/>
    <Button
        android:text="清空"
        android:layout_columnSpan="2"
        android:layout_gravity="fill"/>
    <Button
        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="="/>
GridLayout>

在这个程序中使用了网格布局,用TextView Button控件制作了一个简单计算器的布局。程序中通过androidlayout_rowSpanandroid∶layout_columnSpan设置表明组件横跨的行数与列数,再通过∶android∶layout gravity ="filI"设置表明组件填满所横跨的整行或者整列。程序运行效果如图所示:

使用代码控制网格布局管理器

网格布局也可以通过 Android.widget.GridLayout 类来动态控制,所有的参数也可以通过 Android.widget.GridLayout.LayoutParams类来控制。

通过Android.widget.GridLayout类和Android.widget.GridLayout.LayoutParams类控制网格布局的代码实例如下

这个程序通过在 Activity 中使用 Java 代码动态操作布局文件的方式定义了网格布局,实现了和使用布局文件同样的功能效果如图所示。

这里我们在代码里面没有设置清除和回退两个按钮跨2列,所以这两个按钮各自只占了一列。同样文本0也只是占了一行一列。

作者: 大鸟科创空间, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-3949041.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

文章评论2条评论)

登录后参与讨论

简单qqq 2021-4-13 10:21

学习

yzw92 2021-4-12 06:38

感谢楼主的分享。
相关推荐阅读
大鸟科创空间 2021-04-09 13:40
Android studio之布局管理器之间的相互嵌套
在使用布局管理器进行布局时会发现,有时候实际的需求不是一种布局管理器能够满足的,这时我们可以将多个布局管理器嵌套使用。用法和单个布局管理器的使用并无多大区别,这里就以LinearLayout、Grid...
大鸟科创空间 2021-03-31 16:34
FrameLayout帧布局管理器的使用
帧布局管理器为容器内的控件创建一块空白区域(帧),一帧一个控件,后面添加的控件覆盖在前面的控件上面,类似于Java AWT中的 CardLayout 布局。例如,在播放器 App 中,播放器上面的按钮...
大鸟科创空间 2021-03-30 12:53
无线惯性动捕模块
功能介绍:X1无线惯性动捕模块,是成都大鸟智能科技推出的一款定制型的动作捕捉方案,基于高性能抗磁的惯性传感器和网络通信方案的结合,实现人体任意运动节点的姿态数据捕捉,具有高精度、低延迟、独立性强等特点...
大鸟科创空间 2021-03-25 15:39
Android studio之RelativeLayout:相对布局管理器的使用
RelativeLayout∶ 相对布局管理器相对布局管理器内的控件布局总是相对于父容器或兄弟组件的位置,相对布局是实际中应用最多、最灵活的布局管理器。RelativeLayout 实例及属性详解Re...
大鸟科创空间 2021-03-24 17:56
Android studio之TableLayout表格布局管理器的用法
表格布局管理器继承自LinearLayout线性布局管理器,用行、列方式来管理容器内的控件,表格布局不需要指定多少行列,布局内每添加一行TableRow 表示添加一行,然后在TableRow添加子控件...
广告
我要评论
2
3
1
2
3
4
5
6
7
8
9
0
广告
关闭 热点推荐上一条 /5 下一条