Android提供6种布局类的控件:LinearLayout、TableLayout、GridLayout、FrameLayout、RalativeLayout、AbsoluteLayout

网上搜到一篇文章,写的比较全面。

http://blog.csdn.net/cctcc/article/details/9943587

补充:

1、部分Layout包含gravity属性(对应的XML属性android:gravity),可以使用setGravity方法来设置Layout内部组件的对齐方式。可以同时设置横向和纵向的对齐方式,中间用“|”间隔,但是“|”前后不能有空格。

2、LinearLayout不会换行,如果orientation为horizontal,想要显示5个控件,但是屏幕上只能显示4个控件,则第5个控件不会显示在屏幕上,因为LinearLayout不会自动换行。

3、TableLayout

  •   继承自LinearLayout,而且TableLayout的组成部分TableRow也是一个LinearLayout。
  •   如果直接向TableLayout中添加组件,这个组件将自己占有一行。
  •   TalbeLayout的列宽度由最宽的那个单元格确定。
  •   可以设置以下三种列行为方式,下面指定的列号从0开始:
      • Shrinkable:该列所有单元格可以被收缩,对应TableLayout.setColumnShrinkable(int,boolean);对应TableLayout的XML属性,android:shrinkColumns
      • Stretchable:该列所有单元格可以被拉伸,对应TableLayout.setColumnStretchable(int,boolean);对应TableLayou的XML属性,andriod:stretchColumns
      • Collapsed:该列所有单元格将会被隐藏,对应TableLayout.setColumnCollpased(int,boolean);对应TableLayout的XML属性,android:collpaseColumns

4、RelativeLayout

  可以通过setGravity设置内部各子组件的对齐方式

  setIgnoreGravity(int)设置某个组件不需要遵守gravity设置的对齐方式。

5、Android通常支持如下的距离单位

  px:像素,每个px对应屏幕上的一个点

  dip或dp(device independent pixels,设备独立像素):一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dip=1px。但随着屏幕密度的抽象单位,dip和px的转换会发生改变。

  sp(scaled pixels,比例像素):主要处理字体大小,可以根据用户选择的字体大小进行缩放。

  in(英寸):标准长度单位。

  mm(毫米):标准长度单位。

  pt(磅):标准长度单位,1/72英寸。

  em :这是一个弹性的长度单位,它会继承父级容器的单位大小。显示的时候,大小为父级容器的大小乘以em对应的值。比如父级容器15px,该控件大小为0.5em,则大小为7.5px。

Android 布局类控件的更多相关文章

  1. Android布局及控件的属性说明

    android常用的一些属性说明   android:id --- 为控件指定相应的ID android:text --- 指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件 ...

  2. 让我们创建屏幕- Android UI布局和控件

    下载LifeCycleTest.zip - 278.9 KB 下载ViewAndLayoutLessons_-_Base.zip - 1.2 MB 下载ViewAndLayoutLessons_-_C ...

  3. [转 载] android 谷歌 新控件(约束控件 )ConstraintLayout 扁平化布局

    序 在Google IO大会中不仅仅带来了Android Studio 2.2预览版,同时带给我们一个依赖约束的库. 简单来说,她是相对布局的升级版本,但是区别与相对布局更加强调约束.何为约束,即控件 ...

  4. android自己定义刷新类控件

    android尽管定义了种类很丰富的控件.可是有的时候这些自己定义的控件还是不能满足我的要求,为了可以适配很多其它的需求,我们须要在原有的基础上进行自己定义控件. 今天我向大家介绍的就是android ...

  5. Android RecyclerView滚动类控件修改、去掉滑动边界的阴影效果

    前言 滚动类控件,大家都用的很多,如 RecyclerView.NestedSrollView.... 下面以recyclerView为例讲解,其他滚动控件也同理. RecyclerView 滚动列表 ...

  6. Android 在程序中动态添加 View 布局或控件

    有时我们需要在程序中动态添加布局或控件等,下面用程序来展示一下相应的方法: 1.addView 添加View到布局容器 2.removeView 在布局容器中删掉已有的View 3.LayoutPar ...

  7. Android 中常见控件的介绍和使用

    1 TextView文本框 1.1 TextView类的结构 TextView 是用于显示字符串的组件,对于用户来说就是屏幕中一块用于显示文本的区域.TextView类的层次关系如下: java.la ...

  8. 五、Android学习第四天补充——Android的常用控件(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 五.Android学习第四天补充——Android的常用控件 熟悉常用的A ...

  9. 【风马一族_Android】第4章Android常用基本控件

    第4章Android常用基本控件 控件是Android用户界面中的一个个组成元素,在介绍它们之前,读者必须了解所有控件的父类View(视图),它好比一个盛放控件的容器. 4.1View类概述 对于一个 ...

随机推荐

  1. Openstack入门篇(十一)之neutron服务(控制节点)的部署与测试

    1.Neutron的介绍 Neutron 为整个 OpenStack 环境提供网络支持,包括二层交换,三层路由,负载均衡,防火墙和 *** 等.Neutron 提供了一个灵活的框架,通过配置,无论是开 ...

  2. python将oracle中的数据导入到mysql中。

    一.导入表结构.使用工具:navicate premium 和PowerDesinger 1. 先用navicate premium把oracle中的数据库导出为oracle脚本. 2. 在Power ...

  3. 定时任务的使用-crond

    第1章 练习题 1.1 每天晚上 12 点,打包站点目录/var/www/html 备份到/data 目录下(最好每次备份按时间生成不同的备份包) 1.1.1 测试命令 [root@znix ~]# ...

  4. 阿里云rds 磁盘空间满导致实例锁定

    1.RDS 数据日志已经快满了, 导致数据库不能写入,只读. 2. Binlog日志的保存及清理规则 MySQL实例的空间内默认清理binlog日志的规则如下: 实例空间内默认会保存最近18个小时内的 ...

  5. 使用VMWareWorkstation10搭建学习环境笔记

    第一节:介绍虚拟化技术 虚拟化技术1.在一台计算机运行多个操作系统2.教学环境 测试环境3.和硬件无关4.P to V   物理机->虚拟机(Physical to Virtual)    V ...

  6. 遗留系统:IT攻城狮永远的痛

    我常常觉得我们非常幸运,我们现在所处的时代是一个令人振奋的时代,我们进入了软件工业时代.在这个时代里,我们进行软件开发已经不再是一个一个的小作坊,我们在进行着集团化的大规模开发.我们开发的软件不再是为 ...

  7. flask的jinja2模板中过过滤器的相关小内容

    jinja2模板中有自带的过滤器,有需要直接拿来使用.也可以自己定义过滤器 在过滤器中,有一些常见得操作及关键字.有对字符串的操作,还有对大小写转换的操作.还有对list的操作 过滤器的语法 {# 过 ...

  8. 详解YUV420数据格式

    原文地址:http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html 1. YUV简介 YUV定义:分为三个分量,“Y”表示明亮度( ...

  9. play-with-vim1~5

    1.移动 h,j,k,l分别对应左下上右 2.模式 vim有四种模式:普通模式,插入模式,可视模式,命令行模式 进入vim 默认为普通模式,光标为方块 输入i 进入插入模式,窗口左下角为insert ...

  10. 拦截器 应用详解--SpringMVC

    在实际项目中,拦截器的使用是非常普遍的,例如在购物网站中通过拦截器可以拦截未登录的用户,禁止其购买商品,或者使用它来验证已登录用户是否有相应的操作权限等,Spring MVC提供了拦截器功能,通过配置 ...