博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Code-Snippet】常用布局
阅读量:6715 次
发布时间:2019-06-25

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

1. RelativeLayout

常用属性

第一类:属性值为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复制代码

Java:

RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(        RelativeLayout.LayoutParams.WRAP_CONTENT,         RelativeLayout.LayoutParams.WRAP_CONTENT);layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT);  //居中复制代码

第二类:属性值必须为id的引用名“@id/id-name”

android:layout_below                          	在某元素的下方    android:layout_above                          	在某元素的的上方    android:layout_toLeftOf                       	在某元素的左边    android:layout_toRightOf                     	在某元素的右边    android:layout_alignTop                      	本元素的上边缘和某元素的的上边缘对齐    android:layout_alignLeft                      	本元素的左边缘和某元素的的左边缘对齐    android:layout_alignBottom                 		本元素的下边缘和某元素的的下边缘对齐    android:layout_alignRight                    	本元素的右边缘和某元素的的右边缘对齐复制代码

第三类:属性值为具体的像素值,如30dip,40px

android:layout_marginBottom              		离某元素底边缘的距离    android:layout_marginLeft                   	离某元素左边缘的距离    android:layout_marginRight                 		离某元素右边缘的距离    android:layout_marginTop                   		离某元素上边缘的距离复制代码

代码属性设置:在代码中,需要通过 Layout 的 LayoutParams去设置某个 View 的布局参数,得到某个 View 的布局参数:(其必须强制转换成XML中的对应的布局)

RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams)         voice_time.getLayoutParams();lp.addRule(RelativeLayout.LEFT_OF, R.id.bq_view);lp.setMargins(0,0,ScreenUtils.dip2px(context, 3),0);voice_time.setLayoutParams(lp);	     复制代码

addRule: 设置依靠 RelativeLayout.LEFT_OF :在 voice_time 的 left of 是 R.id.bq_view,就是 voice_time 的右边是 R.id.bq_view,其他类似

setMargins: 设置 Margins,参数:左上右下,单位是 px

2. GridLayout

GridLayout网格布局。先指定行和列,其内的控件便自动换行排列

android:orientation="horizontal"	    //	指定竖向还是横向排列android:rowCount="4"					//	行android:columnCount="4"					//	列复制代码

子控件:

android:layout_rowWeight 设置子控件行的比重android:layout_columnWeight 设置子控件列的比重android:layout_row :  固定显示在第几行。 android:layout_column :  固定显示在第几列,前面几列没控件的话就空着。 android:layout_rowSpan : 跨几行 android:layout_columnSpan:  跨几列   复制代码

例如一个计算器布局可以用 gridLayout:

复制代码

转载于:https://juejin.im/post/5c91a3c8f265da60cd2b54ac

你可能感兴趣的文章
使用andbug的monitor命令
查看>>
CentOS/RedHat上安装man手册
查看>>
我的友情链接
查看>>
log4j配置
查看>>
去掉Intel集成显卡的桌面右键菜单
查看>>
我的友情链接
查看>>
python pip源配置
查看>>
clamav杀毒软件部署笔记
查看>>
小测试
查看>>
涨姿势一下:#include<>和#include""的区别
查看>>
quartz spring配置
查看>>
centos备份与还原
查看>>
fixed 兼容ie6
查看>>
To Be an Architect : 架构的一些基本概念
查看>>
数据恢复软件哪个好
查看>>
『火车进出栈问题 卡特兰数』
查看>>
第四天:HTTP&Tomcat
查看>>
python 文件和路径操作函数小结
查看>>
条件+努力=?
查看>>
HBase分布式安装
查看>>