Android中的几种常用的布局,主要介绍内容有:

  View视图

  RelativeLayout    相对布局管理器

LinearLayout     线性布局管理器

FrameLayout     真布局管理器

TableLayout     表格布局管理器

GridLayout     网格布局管理器

(1) View在XML文件中的常用属性定义:

layout_margin:指定该视图与周围视图之间的空白距离(包括上下左右),(可分别写成layout_marginTop、layout_marginLeft、layout_marginRight、layout_marginBottom)

   minWidth:指定该视图的最小宽度

   minHeight:指定该视图得到最小高度

   padding:指定该视图的内边距。同样有paddingBottom、paddingTop、paddingLeft、paddingRight属性

   visable:指定该视图的可视类型(visable 可见;invisible 不可见但是占位;gone 消失,不可见且不占位)

   layout_gravity:指定该视图与上级视图的对齐方式(left,right,top,bottom,center,center_horizontal,center_vertical)

      layout_width、layout_height、background、id等

在代码中的常用设置方法说明:

  setLayoutParams:设置视图宽高,参数对象的构造函数可以设置视图的宽高,其中,有LayoutParams.MATCH_PARENT和LayoutParams.WRAP_CONTENT

  setBackgroundcolor:设置背景颜色

  setBackgroundDrawable:设置背景图片

  setBackgroundResourse:设置背景资源ID

  setPadding

setVisability

(2)RelativeLayout    相对布局管理器

RelativeLayout下级视图的位置是相对位置,得有具体的参照物才能确定最终位置。如果不设定下级视图的参照物,那么下级视图默认显示在Relative内部的左上角。用于确定视图位置的           参照物可以是该视图的平级视图也可以是该视图的上级视图。

android:gravity      设置子组件的摆放方式

android:ignoreGra     设置该id的组件不受gravity影响(需要id)

---属性值为true或false

android:layout_centerHrizontal 水平居中
                   android:layout_centerVertical 垂直居中
                   android:layout_centerInparent 相对于父元素完全居中
                   android:layout_alignParentBottom 贴紧父元素的下边缘
                   android:layout_alignParentLeft 贴紧父元素的左边缘
                  android:layout_alignParentRight 贴紧父元素的右边缘
                  android:layout_alignParentTop 贴紧父元素的上边缘
                  android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物
        ---属性值为id   (相对组件的位置)

                  android:layout_below 在某元素的下方
                  android:layout_above 在某元素的的上方
                  android:layout_toLeftOf 在某元素的左边
                  android:layout_toRightOf 在某元素的右边
                  android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐
                  android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐
                  android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
                  android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐
       ---属性值为具体的像素值,如40dip,40px
                android:layout_marginBottom 离某元素底边缘的距离
                android:layout_marginLeft 离某元素左边缘的距离
                android:layout_marginRight 离某元素右边缘的距离
                android:layout_marginTop 离某元素上边缘的距离

android中常用的布局管理器的更多相关文章

  1. android中常用的布局管理器(二)

    接上篇博客 (3)LinearLayout     线性布局管理器 线性布局管理器是将放入其中的组件按照垂直或水平方向来布局,每一行或每一列只能放一个组件,并且不会换行,当组件排列到窗体的边缘后,后面 ...

  2. Android UI组件:布局管理器

    为了更好的管理Android应用的用户界面中的组件,Android提供了布局管理器.通过使用布局管理器,Android应用的图形用户界面具有良好的平台无关性.通常,推荐使用布局管理器来管理组件的分布. ...

  3. Android开发5:布局管理器2(表格布局TableLayout)

    版本:Android4.3 API18  学习整理:liuxinming 概念      TableLayout继承了LinearLayout,因此它的本质依然是线性布局管理器.      表格布局采 ...

  4. Android学习笔记(10).布局管理器

    布局管理器的几个类都是ViewGroup派生的,用于管理组件的分布和大小,使用布局管理器能够非常好地解决屏幕适配问题. 布局管理器本身也是一个UI组件,布局管理器能够相互嵌套使用,以下是布局管理器的类 ...

  5. Android中常用的布局

    一般分为5大类. Android中所有的空间第一字母都是大写 1.线性布局 LinearLayout 2.相对布局 RelativeLayout 3.帧布局--分层显示  FrameLayout 4. ...

  6. Android 中常用的布局

    一.线性布局----LinearLayout   horizontal 水平 <?xml version="1.0" encoding="utf-8"?& ...

  7. 四种方式写按钮点击事件和Android 中常用的布局

    1.匿名内部类的方式 2.创建一个类实现onClickListener,实现onClick方法,设置控件点击时传一个类的对象 3.让当前类实现onClickListener,设置控件点击事件时传递一个 ...

  8. Android 布局管理器

    为了更好地管理Android应用程序的用户界面组件,Android它提供了一个布局管理.通过使用布局管理,Android具有良好的平台无关的图形用户界面应用程序. 平时,推荐布局管理器来管理分布式组件 ...

  9. 【java】浅析java组件中的布局管理器

    这篇博文笔者介绍一下java组件中,常用的布局管理器.java组件中的布局方式有好几十种,所有的这些布局管理器都实现了java.awt.LayoutManager接口.接下来笔者介绍一下常用的5种布局 ...

随机推荐

  1. 构建一个学生Student,根据类Student的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生Java语言成绩的平均值,以及计算并输出他们Java语言成绩的最大值和最小值。

    定义一个表示学生信息的类Student,要求如下: (1)类Student的成员变量: sNO 表示学号: sName表示姓名: sSex表示性别: sAge表示年龄: sJava:表示Java课程成 ...

  2. java核心技术----Object类

    package java.lang; /** * Class {@code Object} is the root of the class hierarchy. * Every class has ...

  3. windows下编译LUA-cjson

    下载地址:http://www.kyne.com.au/~mark/software/lua-cjson.php 编译环境:win7 + MINGW 修改下载得到的lua-cjson-2.1.0.zi ...

  4. C语言宏的神奇写法:语句块作为参数,算半个函数式编程?

    我想要写几个循环做测试代码,每次都写 `for(size_t i = 0; i < n; i++)` 很烦人,然后就灵机一动,能不能用宏实现,然后就写出了: #define repeat(n, ...

  5. HDU_5602_概率dp

    http://acm.hdu.edu.cn/showproblem.php?pid=5602 dp[1][i][j]表示轮到第二个人操作时,第一人总和i,第二人总和j,第一人胜的最小概率(因为每个人都 ...

  6. WeChall_Training: Encodings I (Training, Encoding)

    We intercepted this message from one challenger to another, maybe you can find out what they were ta ...

  7. java代码之美(15)---Java8 Function、Consumer、Supplier

    Java8 Function.Consumer.Supplier 有关JDK8新特性之前写了三篇博客: 1.java代码之美(1)---Java8 Lambda 2.java代码之美(2)---Jav ...

  8. HTML5与HTML4的区别-----文档结构

    HTML5在结构和语法上做了大量的简化.当然,也提供了语义化的标签 结构上区别: 1.简化了文档声明语句     HTML5仅规定了一种:       <!DOCTYPE html> 2. ...

  9. python练习——第0题

    原GitHub地址:https://github.com/Yixiaohan/show-me-the-code 题目:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种 ...

  10. Go语言实现:【剑指offer】把二叉树打印成多行

    该题目来源于牛客网<剑指offer>专题. 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. 需要分层,二维数组. Go语言实现: /** * Definition for ...