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. 5290: [Hnoi2018]道路

    5290: [Hnoi2018]道路 链接 分析: 注意题目中说每个城市翻新一条连向它的公路或者铁路,所以两种情况分别转移一下即可. 注意压一下空间,最后的叶子节点不要要访问,空间少了一半. 代码: ...

  2. opencv-Getting Started with Images

    1.opencv库简单的操作图片 # coding = utf-8 # 书籍:<<学习opencv>> import cv2 from matplotlib import py ...

  3. 洛咕 P2480 [SDOI2010]古代猪文

    洛咕 P2480 [SDOI2010]古代猪文 题目是要求\(G^{\sum_{d|n}C^d_n}\). 用费马小定理\(G^{\sum_{d|n}C^d_n\text{mod 999911658} ...

  4. [BZOJ4476][JSOI2015]送礼物[分数规划+单调队列]

    题意 题目链接 分析 分数规划之后可以得到式子:\(max-min-r*mid+l*mid\geq k*mid\) . 贪心选择,肯定区间的端点是极小或者极大值.特殊处理区间长度 \(\leq L\) ...

  5. JetBrains全家桶使用攻略

    JetBrains全家桶使用攻略 今天狠狠心某宝买了一个key,可以使用15款开发软件,在此进行记录. 全家桶链接:https://www.jetbrains.com/products.html?fr ...

  6. CSS3新增特性详解(一)

    注:由于CSS3的新特性较多,所以分两篇博文来说明.第一篇主要包括新的选择器.文字及块阴影.多背景图.颜色渐变.圆角等.第二篇主要细说CSS3的各种动画效果,如:旋转.移动.缩放等,还包括图标字体的应 ...

  7. C#/VB.NET与西门子PLC进行ModbusTcp通信

    进入自动化行业半年多了,每天都与机器打交道. 前段时间接手一个任务,需要将我们机台与下站机台进行通讯,我们机台是PC,下站机台为西门子S7-1200. 想想完成这个任务,领导就会对我这个新人刮目相看, ...

  8. 树莓派修改VNC分辨率

    1.打开终端输入 sudo raspi-config 2. 选择 Advanced Options  再选择 Resolution 3.选择想要的分辨率,确定 4.重启

  9. python时间模块详解(time模块)

    time 模块 -- 时间获取和转换 time 模块提供各种时间相关的功能 在 Python 中,与时间处理有关的模块包括:time,datetime 以及 calendar 必要说明: 虽然这个模块 ...

  10. 使用着色器在WebGL3D场景中呈现行星表面地形

    实验目的:按照一定规律生成类地行星地表地形区块,并用合理的方式将地形块显示出来 涉及知识:Babylon.js引擎应用.着色器编程.正态分布.数据处理.canvas像素操作 github地址:http ...