Android布局及属性归总
常见布局
LinearLayout 线性布局 子元素任意,组织成一个单一的水平或垂直行,默认为水平方向
TableLayout 表格布局 子元素为<TableRow>,一个TableRow就代表TableLayout中的一行
RelativeLayout 相对布局 子元素任意
AbsoluteLayout 绝对布局 子元素任意
FrameLayout 帧布局 控件会放到左上角
公共控件属性
android:id = "@+id/XXX" 程序中通过ID来关联控件
android:layout_width/android:layout_height 控制控件的宽度/高度,可选"wrap_content"/"fill_parent"/"match_parent"/具体像素
android:layout_marginLeft/Right/Top/Bottom = “5dip” 各边距离其他控件的距离
android:gravity 控件中内容的显示位置
android:textSize 空间中文本大小
android:textColor = "#ff123456" 空间中文本颜色,以#开头,前两位为透明值,后六位为颜色值
android:textStyle = "normal"/"bold"/"italic" 控件文本风格,也可用“|”将属性组合起来
android:text 控件文本内容
android:sigleLine 如果设置为真的话,则将控件的内容在同一行当中进行显示
android:background = "@drawable/window_bg" 控件背景
android:scaleType 控制图片方式。
CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
CENTER_CROP / centerCrop 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
CENTER_INSIDE / centerInside 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
FIT_CENTER / fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示
FIT_END / fitEnd 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置
FIT_START / fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置
FIT_XY / fitXY 把图片不按比例扩大/缩小到View的大小显示
MATRIX / matrix 用矩阵来绘制,动态缩小放大图片来显示。
android:src = "@drawable/window_bg" 引用资源/控件图片,用于ImageButton,ImageView等需要图片的控件
android:visibility 控件可见性,"visible"表可见,"invisible"表不可见,但在布局中占用的位置还在,"gone"表不可见,完全从布局中消失
android:padding 空间中内容与控件边框的距离
android:weight 指定画完控件后剩余空间的分配所占比例
android:ems/maxEms/minEms 控制控件宽度
EditText的android:hint 设置EditText为空时输入框内的提示信息
LinearLayout特有属性
android:orientation=horizontal/vertical 布局中子控件排布方向,默认为水平方向
android:layout_weight 子元素属性,描述子元素在父元素剩余空间中占有的大小比例,关于此属性,详见http://sinye.iteye.com/blog/1068204
TableLayout特有属性(子元素都是横向排列,并且宽高一致)
android:orientation 属性值恒为horizontal
android:layout_width 属性值恒为MATCH_PARENT
android:layout_height 属性值恒为WRAP_CONTENT
android:stretchColums 指定当一个TableRow中的控件不够填充满整个宽度时,将会被拉伸的条目
RelativeLayout特有属性
android:layout_alignParentLeft/Right/Top/Bottom = "true/false" 紧贴父控件,与父控件对齐方式
android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物
android:orientation 布局中子控件排布方向
android:layout_toRightOf/toLeftOf/below/above="@id/id-name" 控件和某个控件的位置关系,其中在左边/右边包含但不仅限于紧靠,在上方/下方包含但不仅限于正上方/正下方
android:layout_alignTop/Bottom/Left/Right/Baseline="@id/id-name" 控件与其他控件对齐
android:layout_centerHorizontal/Virtical/InParent 指定控件位于水平/垂直/父控件的中间位置
AbsoluteLayout特有属性
android:layout_X/Y 控件的X,Y坐标,屏幕左上角为坐标原点(0,0)
注意点
1 android:gravity设置控件中内容的对齐方式,android:layout_gravity设置控件本身的对齐方式
2 当android:gravity和android:padding同时做用时,先按gravity进行排布,再按padding调整
3 android:padding指定内边距(站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离),
android:layout_margin指定外边距(站在自己的角度描述问题,规定自己和其他(上下左右)的view之间的距离,如果同一级只有一个view,那么它的效果基本上就和padding一样了)
4 Drawable文件夹里面的图片命名是不能大写的
5 单个控件的风格设置通过在布局文件的控件中添加style属性,整个Activity或者App的主题设置通过在manifest文件中的Theme设置
Refs
浅谈Android五大布局(一)——LinearLayout、FrameLayout和AbsoulteLayout - 熊猫82 - 博客园
- 浅谈Android五大布局(二)——RelativeLayout和TableLayout - 熊猫82 - 博客园
- Android成长之路-布局详解 - - 博客频道 - CSDN.NET
- Android成长之路-好玩的相对布局 - - 博客频道 - CSDN.NET
- android layout_weight讲解 - 路漫漫其修远兮 吾将上下而求索 - ITeye技术网站
- android_paddingLeft与android_layout_marginLeft的区别_fynancywin的空间_百度空间
- padding与margin的区别 - Lily's Android tech Blog - 博客频道 - CSDN.NET
- 新浪微博布局学习——活用RelativeLayout - 农民伯伯 - 博客园
- RelativeLayout ? { Android学习指南 }
- Android 利用addView 让Activity 动态加入多个View 物件 _ 第三极 _ 移动开发者
- Android2.2中添加的match_parent和fill_parent没有区别 - ·没有风雨躲得过,没有坎坷不必走· - 博客频道 - CSDN.NET
- Android布局之RelativeLayout(相对布局)_hoyah_百度空间
- Android布局之AbsoluteLayout(坐标布局)_hoyah_百度空间
- Android布局之LinearLayout(线性布局)_hoyah_百度空间
- Android布局之TableLayout(表格布局)_hoyah_百度空间
- Android布局之FrameLayout(单帧布局)_hoyah_百度空间
- LinearLayout、RelativeLayout、FrameLayout居中显示 - Android - 红黑联盟
- Android-TableLayout布局 - 个人笔记 - 51CTO技术博客
- Android入门第五篇之TableLayout (二) - hellogv的专栏 - 博客频道 - CSDN.NET
- Android入门第四篇之TableLayout (一) - hellogv的专栏 - 博客频道 - CSDN.NET
- Android入门第三篇之RelativeLayout、FrameLayout - hellogv的专栏 - 博客频道 - CSDN.NET
- Android入门第二篇之LinearLayout、AbsoluteLayout - hellogv的专栏 - 博客频道 - CSDN.NET
- Android成长之路-编码实现软件界面 - - 博客频道 - CSDN.NET
- Android腾讯微薄客户端开发八_微博查看(转播,对话,点评) - Android - mobile - ITeye论坛
- android复杂布局示例 - meetrice - 博客园
- Android笔记:Button居中_水平居中_垂直居中(总结) - Mars2639——求知de路上 - 博客频道 - CSDN.NET
- android布局属性详解 - C'est la vie - 博客园
- 【原创】常见的四种布局使用及其中常用控件属性_洛朗朗_新浪博客
- android布局属性大全 - A_Big_Monkey - ITeye技术网站