专栏首页Android干货浅谈GridLayout(网格布局)

浅谈GridLayout(网格布局)

Android 4.0 布局-->GridLayout 网格布局

以行列单元格的形式展示内部控件排列,可以实现类似计算机键盘效果 ,也可以实现可自动变行的标签群效果

使用GridLayout ,有效减少了布局的深度,渲染速度也是很快的

类似于LinearLayout 的使用,额外添加了一些特有的属性

先来看下GridLayout的一些属性介绍

1、

android:orientation="horizontal|vertical"

内部控件是水平排列的还是竖直排列的

   与LinearLayout使用方法一致

2、

android:columnCount="4"
android:rowCount="4"

内部控件 一行或者一列的显示条目个数,即一行/列 最多显示几条,这里是4条,当内部子控件数目多于时,自动换行/列显示 ,使用此功能方便了实现了自动换行标签群的功能

3、子控件属性

android:layout_row = “3”

Android:layout_column = “3” 

   用于设置该控件的位置  注意从0开始 ,类似于数组,这里即该控件位置 第四行第四  列 

4、子控件属性

   android:layout_rowSpan = “2”|  android:layout_columnSpan = “2”

   android:layout_gravity="fill"

 设置某控件跨越多行或多列,前一个设置表明该控件跨越的行数或列数,后一个设置表明该控件填满所跨越的整行或 整列。

---------------------------------------------------------------------------------------------------------------- 

 示例(别人的代码 ,直接拿来用了):

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:orientation="vertical" android:layout_width="match_parent"
 4     android:layout_height="match_parent">
 5     <GridLayout
 6         android:layout_width="wrap_content"
 7         android:layout_height="wrap_content"
 8         android:layout_gravity="center"
 9         android:columnCount="4"
10         android:rowCount="4"
11         android:orientation="horizontal" >
12 
13         <Button
14             android:layout_column="3"
15             android:text="/" />
16 
17         <Button android:text="1" />
18 
19         <Button android:text="2" />
20 
21         <Button android:text="3" />
22 
23         <Button android:text="*" />
24 
25         <Button android:text="4" />
26 
27         <Button android:text="5" />
28 
29         <Button android:text="6" />
30 
31         <Button android:text="-" />
32 
33         <Button android:text="7" />
34 
35         <Button android:text="8" />
36 
37         <Button android:text="9" />
38 
39         <Button
40             android:layout_gravity="fill"
41             android:layout_rowSpan="3"
42             android:text="+" />
43 
44         <Button
45             android:layout_columnSpan="2"
46             android:layout_gravity="fill"
47             android:text="0" />
48 
49         <Button android:text="00" />
50 
51         <Button
52             android:layout_columnSpan="3"
53             android:layout_gravity="fill"
54             android:text="=" />
55 
56     </GridLayout>
57 </LinearLayout>

效果图:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 安卓开发_浅谈ListView(SimpleAdapter数组适配器)

    听着music睡
  • 安卓开发_浅谈Service

    听着music睡
  • Android开发实战(二十一):浅谈android:clipChildren属性

    听着music睡
  • LinearLayout(线性布局)

    要点: android:orientation="vertical"垂直线性布局,"horizontal"水平线性布局 android:gravity="top...

    欢醉
  • 13.Android-ListView使用、BaseAdapter/ArrayAdapter/SimpleAdapter适配器使用

    ListView 是 Android 系统为我们提供的一种列表显示的一种控件,使用它可以用来显示我们常见的列表形式。继承自抽象类 AdapterView。继承图...

    张诺谦
  • UI的基本控件设计

    在activity_main.xml中添加控件的样式,在MainActivity中可以添加点击事件

    Dream城堡
  • 实战 | 使用揭露动画(Reveal Effect)做一个丝滑的Activity转场动画

    最近跟几个小伙伴在实践一个项目,考虑到界面效果,我们决定使用揭露动画作为Activity的转场动画。

    凌川江雪
  • 1.[Andriod]之Andriod布局 VS WinPhone布局

    0.写在前面的话 近来被HTML+CSS的布局折腾的死去活来,眼巴巴的看着CSS3中的flex,grid等更便捷更高效的的布局方式无法在项目中应用,心里那叫一个...

    blackheart
  • 《Monkey Android》第6课点击事件的四种写法

    我们在“Button”上按住“ctrl”键,并点击鼠标左键,跟踪到Button的源码类,发现它是继承于TextView,继续跟踪,发现TextView继承于Vi...

    GitOPEN
  • Kotlin 第二弹:Android 中 PDF 创建与渲染实践

    这是 Kotlin 练习的的第二篇。这一篇的由来是因为刚刚在 Android 开发者官网查看 API 的时候,偶然看到了角落里面的 pdf 相关。

    Frank909

扫码关注云+社区

领取腾讯云代金券