Android布局及属性归总

原文地址:http://www.cnblogs.com/zyw-205520/archive/2013/01/18/2866575.html

常见布局

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技术网站
时间: 2024-10-11 20:38:26

Android布局及属性归总的相关文章

android布局常用属性记录

android布局常用属性记录 27. 三 / android基础 / 没有评论 http://blog.csdn.net/xn4545945/article/details/7717086这里有一部分别人总结的其余的: align:对齐 parent:容器 bottom:底部 alignparentbottom:是否显示在容器底部. 值为true 或者 false android:layout_alignParentBottom=”true” android:gravity=”top” htt

android布局相关属性

 android属性 Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料, 第一类:属性值为true或false android:layout_centerHrizontal  水平居中 android:layout_centerVertical   垂直居中 android:layout_centerInparent    相对于父元素完全居中 android:layout_alignParentBottom 贴紧父元素的下边缘 android:

Android 控件布局常用属性

<!--单个控件经常用到android:id -- 为控件指定相应的IDandroid:text -- 指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符串android:grivity -- 指定控件的基本位置,比如说居中,居右等位置android:textSize -- 指定控件当中字体的大小android:background -- 指定该控件所使用的背景色,RGB命名法 android:width -- 指定控件的宽度android:height --

android 布局属性大全---初学者必备

Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料,花费本人一个下午搞出来的,希望对其他人有用. 第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInparent 相对于父元素完全居中 android:layout_alignParentBottom 贴紧父元素的下边缘 and

【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性

在进行UI布局的时候,可能常常会用到 android:gravity  和 android:layout_Gravity 这两个属性. 关于这两个属性的差别,网上已经有许多人进行了说明,这边再简单说一下. (资料来自网络) LinearLayout有两个很类似的属性: android:gravity与android:layout_gravity. 他们的差别在于: android:gravity 属性是对该view中内容的限定.比方一个button 上面的text. 你能够设置该text 相对于

android 布局中 gravity 和 layout_gravity 属性

gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思. android:gravity 和 android:layout_gravity 的区别: android:gravity 是设置该view里面的内容相对于该view的位置,例如设置button里面的text相对于view的靠左,居中等位置.(也可以在Layout布局属性中添加,设置Layout中组件的位置). android:layout_gravity 是用来设置该view相对与父view的位置,例如设置button在l

Android 布局学习之——LinearLayout的layout_weight属性

一直对layout_weight属性感到比较困惑,今天学习一下,来深入了解layout_weight属性和它的用法.     定义     首先,看看Android官方文档是怎么说的,毕竟人家才是权威嘛. 官方文档的意思是: layout_weight属性用于分配LinearLayout中的的额外空间(extra space).                  如果View不想拉伸的话,layout_weight值设置为0.否则的话这些像素会按比例分配到 这些weight值大于0的所有View

android 布局常用混淆属性

1.如何控制某一控件在父控件中的相对位置呢? 在Android系统中提供了layout_margin,用来控制某一控件边缘相对于父控件的边距. 其中, android:layout_marginTop表示某一控件相对于父控件顶部的距离. android:layout_marginLeft表示某一控件相对于父控件左边框的距离. android:layout_marginRight表示某一控件相对于父控件右边框的距离. android:layout_marginButtom表示某一控件相对于父控件底

3.addView调用之后导致子布局的android:layout_width=&quot;match_parent&quot;属性或者 android:layout_width=&quot;fll_parent&quot;属性无效。

典型错误案例: 经常我们会通过addView方法,动态添加一些子布局,比如下面的一段代码. LinearLayout linParent = (LinearLayout) findViewById(R.id.aty_slider_linParent); View vChild = mInflater.inflate(R.layout.view_loding, null); linParent.addView(vChild); view_loading是一个布局文件: <?xml version=