博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android布局及属性归总(查询用)
阅读量:6174 次
发布时间:2019-06-21

本文共 3257 字,大约阅读时间需要 10 分钟。

常见布局

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

 
转自:

转载于:https://www.cnblogs.com/shanzei/archive/2012/03/23/2413701.html

你可能感兴趣的文章
Java的热部署(后期完善)
查看>>
css总结
查看>>
Python学习笔记之六:在VS中调用Python
查看>>
node.js获取参数的常用方法
查看>>
jquery 的 change() 方法的使用
查看>>
本地计算机上的XXX服务启动后又停止了
查看>>
<s:iterator>标签迭代数据不显示
查看>>
判断 SQLServer 触发器类型,支持多行
查看>>
SQL表连接查询(inner join、full join、left join、right join)
查看>>
阿里云OTS(开放结构化数据服务)可视化管理工具的设计和功能介绍
查看>>
Github创建分支
查看>>
转换PHP脚本成为windows的执行程序
查看>>
Python组织文件 实践:将带有美国风格日期的文件改名为欧洲风格日期
查看>>
实现iOS7上tableView的切割线像iOS6中的效果
查看>>
如何用纯 CSS 创作一个按钮文字滑动特效
查看>>
Android BottomNavigationBar底部导航控制器的使用
查看>>
HBase+Spark技术双周刊 第七期
查看>>
QDS03 pip
查看>>
「镁客早报」诺基亚发布世界首款后置五摄手机;微软发布HoloLens 2新一代混合现实设备...
查看>>
安装PageAdmin Cms时候“System.ServiceModel.Activation.HttpModule”错误的解决办法
查看>>