Android开发从入门到放弃(7)使用GridLayout
来源:互联网 发布:王路 知乎 编辑:程序博客网 时间:2024/05/22 12:58
本篇博客简单介绍一下Android开发中的GridLayout。GridLayout跟上一篇的主题TableLayout在功能上十分相似,都是以表格地形式来布局,但在具体的用法上有些不同。
创建表格的方式
GridLayout在创建表格时就已经指定了行数和列数。通过GridLayout的columnCount
属性设置列数,通过rowCount
指定行数。而TableLayout是通过手动添加TableRow
的形式来指定行的,TableRow中的每个View控件都算一列。
指定控件的行和列
默认情况下,GridLayout中的控件会自动生成行索引和列索引。假设有一个3*4的GridLayout,中间有10个元素,那么这十个元素的行号和列号用(行号,列号)的形式来表示的话分别是:(0,0) (0,1) (0,2) (0,3) (1,0) (1,1) (1,2) (1,3)(2,0) (2,1)。也就是先按顺序占满一行,然后继续占满下一行。
但是,可以手动地来设置行和列。View控件的layout_row
属性来决定当前控件位于第几行,layout_column
属性来决定当前控件位于第几列。
需要注意的是,一旦某个控件手动地指定了行或列,下面的所有控件也都需要手动指定,否则最后的结果将会拆强人意。
指定控件横跨几列
默认情况下一个View控件占用1列,但可以通过layout_columnSpan
属性来指定当前控件横跨几列。
一个使用GridLayout的例子
上一篇博客通过TableLayout实现的那个界面,下面的这个例子我们来通过GridLayout再实现一次
<?xml version="1.0" encoding="utf-8"?><GridLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_grid_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:columnCount="4" android:rowCount="2" tools:context="com.example.zdk.relativelayoutdemo.GridLayoutActivity"> <TextView android:text="username"/> <EditText android:hint="input your username" android:layout_columnSpan="3" android:layout_columnWeight="1"/> <Button android:layout_column="2" android:layout_row="1" android:text="Cancel" /> <Button android:text="OK" android:layout_column="3" android:layout_row="1" /></GridLayout>
0 0
- Android开发从入门到放弃(7)使用GridLayout
- Android开发从入门到放弃(4)使用RelativiLayout
- Android开发从入门到放弃(5)使用LinearLayout
- Android开发从入门到放弃(6)使用TableLayout
- Android开发从入门到放弃(10)适配GridView
- 【Android 从入门到放弃】 ButterKnife 使用
- Android开发从入门到放弃(3)使用SharedPreferences保存数据
- Android开发从入门到放弃(8)使用ListView显示一个简单的列表
- Android开发从入门到放弃(9)使用ListView显示一个类的数组
- android开发之gridlayout使用入门
- Android开发从入门到放弃(1)在Activity之间传递数据
- Android开发从入门到放弃(2)保存Activity的状态
- Android开发从入门到放弃(11)适配Spinner和AutoComplete
- web开发从入门到放弃
- 【Android 从入门到放弃】Glide(4.0 RC版) 的使用01
- Android从入门到放弃系列--目录
- android从入门到放弃2--ButterKnife
- Android从入门到放弃3-线程
- 如何在Unity(C#)內使用pointer?
- javascript 四种数组遍历方法
- 使用连接mysql的jdbc驱动最新版引发的问题
- 订单系统架构笔记摘抄
- 五类IP的范围
- Android开发从入门到放弃(7)使用GridLayout
- 贪吃蛇游戏(C语言)(在Dev c++、vc中运行通过)
- 设计模式(17)之中介者模式
- 利用JQuery实现顶部导航栏功能
- 实验项目-计算器
- java.lang.System.arraycopy()方法
- java 设计模式之 -- 观察者模式
- SDN相关概念
- android内容提供者contentProvider_插入联系人