A019-布局之GridLayout

GridLayout

网格布局,是Android4.0之后的API才提供的,算是一个相对新的布局容器,它的用法也很简单,类似LinearLayout可以指定方向,也可以指定控件占用多少行或列的空间。

举例

我们看一个例子:

这里我做了一个登录的一个布局,如果不使用GridLayout来进行布局,可能会有多个布局的嵌套才能实现这样的布局,相对比较麻烦,使用了GridLayout我们可以更加灵活的去控制对齐;网格视图针对行和列进行分割为一个个单元格。

示例代码:

<?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="match_parent"
    android:orientation="horizontal"
    android:columnCount="4"
    android:rowCount="4"
    >

    <TextView
        android:text="姓名:"
        android:layout_marginLeft="5dp"
        android:layout_gravity="center"/>

    <EditText
        android:layout_gravity="fill"
        android:layout_columnSpan="3"

        />

    <TextView
        android:text="密码:"
        android:layout_marginLeft="5dp"
        android:layout_gravity="center"/>

    <EditText
        android:layout_gravity="fill"
        android:layout_columnSpan="3"
        android:inputType="textPassword"
        />

    <Button
        android:text="登录"
        android:layout_column="1"
        />

</GridLayout>

属性解析

android:orientation=”horizontal|vertical”

这个属性跟LinearLayout一样,都表示布局方向。

android:columnCount=”4”

表示4列

android:rowCount=”4”

表示4行

android:layout_columnSpan=”3”

表示占用3列的空间大小

android:layout_rowSpan=”3”

表示占用3行的空间大小

android:layout_gravity

可用用来设置控件的对齐方式

总结

前面几篇博客加上本篇博客已经介绍完了Android的布局容器,分别为LinearLayout、RelativeLayout、FrameLayout、TableLayout、GridLayout。相信大家学习完这几节课程,对Android中的布局容器已经有了一些了解,每一个控件都不能独立于容器存在,布局容器之后我们接下来就会继续学习控件的使用,通过模块化来学习如何去搭建用户界面,这样才会让大家更加接地气去感受一个App的UI是如何搭建起来的。

转载请注明:IT_xiao小巫 http://blog.csdn.net/wwj_748

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-08 11:52:53

A019-布局之GridLayout的相关文章

Android精通:TableLayout布局,GridLayout网格布局,FrameLayout帧布局,AbsoluteLayout绝对布局,RelativeLayout相对布局

在Android中提供了几个常用布局: LinearLayout线性布局 RelativeLayout相对布局 FrameLayout帧布局 AbsoluteLayout绝对布局 TableLayout表格布局 GridLayout网格布局 TableLayout表格布局 TableLayout的介绍 TableLayout是将子类向分别排列成行和列的布局视图容器,TableLayout是由许多TableRow对象组成的,表格布局以行列的形式管理子控件,每一个单元是一个TableRow或者Vie

Android 布局之GridLayout

1 GridLayout简介 GridLayout是Android4.0新提供的网格矩阵形式的布局控件. GridLayout的继承关系如下:java.lang.Object  --> android.view.View    --> android.view.ViewGroup      --> android.widget.GridLayout GridLayout包含的属性如下: android:alignmentMode属性说明:当设置alignMargins,使视图的外边界之间

java在线聊天项目0.2版本 制作客户端窗体,使用swing(用户界面开发工具包)和awt(抽象窗口工具包) BorderLayout布局与GridLayout布局不同之处 JPanel设置大小

代码如下: package com.swift; import java.awt.BorderLayout; import java.awt.Color; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; i

android的布局-----GridLayout(网格布局)

学习导图 (一)简介 网格布局由GridLayout所代表,在android4.0之后新增加的布局管理器,因此需要android4.0之后的版本中使用,如果在更早的平台使用该布局管理器,则需要导入相应的支持库<android.support.v7.widget.GridLayout> (二)案列----计算器 <?xml version="1.0" encoding="utf-8"?> <GridLayout xmlns:android

android 05 桢布局:FrameLayout 网格布据 GridLayout

xml文件: <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:layout_width="128dp" android:layou

UI组件:布局管理器

一.线性布局(LinearLayout) 线性布局可以让布局中的组件一个接着一个的连在一起水平对齐(orientation="vertical")或者垂直对齐(orientation="horizontal"),写游戏界面时会限制动作,所以不推荐游戏界面中使用 特点:线性布局不会主动换行,当几个组件水平分布,但是这一行放不下时,多余的不会显示 二.绝对布局(AbsoluteLayout) 绝对布局没有布局控制,组件的大小和位置全部由开发人员用x,y坐标来一一定义,由

线性布局的权重究竟是怎么一回事

写在前面 如果你是新手,我建议你坚持看下去,因为你肯定不了解权重,而权重并没有那么简单.希望看完后对你有一定的帮助. 关于说什么专业不专业,或者app流畅,其实不存在这回事情.设置成0dp,wrap-content,以及match-parent是有很多道理可循的. 关于布局 上节中我们讲了一些TextView的基本用法,那么这节我们就来讲一些Android中的常见布局. Android早期主要有六大布局:分别是线性布局(LinearLayout),相对布局(RelativeLayout),帧布局

第7章(2)--布局控件常用的公共属性

分类:C#.Android.VS2015: 创建日期:2016-02-10 一.简介 Android应用程序中的布局控件都是容器控件,用于控制子元素的排列和放置方式.Android提供的布局控件有: LinearLayout:线性布局. GridLayout:网格布局. TableLayout:表布局. FrameLayout:框架布局. Relative Layout:相对布局. AbsoluteLayout:绝对布局. 二.常用的公共属性 Android的每个布局控件(layout)都是一个

14.5-全栈Java笔记:java.awt这些布局怎么写?|流式|边界|网格

布局管理器 读者会发现,如果使用坐标定位法(空布局),在一个比较复杂的界面上定位每个控件的坐标是一个非常麻烦的工作,而且在界面大小发生改变时,控件的绝对位置也不会随之发生改变.那么如果我们想让用户界面上的组件可以按照不同的方式进行排列怎么办?例如:可以依序水平排列,或者按网格方式进行排列等,其实每种排列方案都是指组件的一种"布局",要管理这些布局,就需要本节学习的布局管理器. 管理布局的类由java.awt包来提供,布局管理器是一组实现java.awt.LayoutManager接口的

Android布局需要知道的基础知识

eclipse配置环境变量: 1.在 eclipse 中的 Window --> preferences  --> Android(安装了ADT的前提下才能看到Android) --> SDK Location: 将SDK路径导入 2.将 sdk 目录中的 platform-tools. tools 配置到 环境变量的 Path 中 && cmd 命令 : adb(查看android是否配置好环境). java(查看java是否配置好环境) && 配置 j