RelativeLayout.addRule()方法
RelativeLayout.addRule()方法
通过LayoutParams的 addRule方法来额外的添加别的规则了,android.widget.RelativeLayout.LayoutParams.addRule(int verb, int anchor),
其中 anchor 参数指定可以是 View 的 id(“相对于谁”)、RelativeLayout.TRUE(启用某种对齐方式)或者 是-1(应用于某些不需要 anchor 的 verb)[因为 RelativeLayout.TRUE的值为 -1 ,所以-1或者RelativeLayout.TRUE都是可以的]、是 0 (不启用这个规则)
其中 verb 参数指定相对的“动作”;
(1)如果是相对于父控件的相对布局的话 anchor 参数可以不用或者设置为-1或者RelativeLayout.TRUE ,
(2)如果是相对于级别和自己同一级的控件的话参数设置应该是 view 的id ,
(3)如果参数设置为 0 的话,则表示这个规则不会运用到该控件的布局中,当是相对于本身的父控件的时候这个参数可以省略。
比如:
relLayoutParams.addRule(RelativeLayout.ABOVE,imageViewId.getId())
子控件相对于控件:imageViewId在其的上面
relLayoutParams.addRule(RelativeLayout.BELOW ,imageViewId.getId())
子控件相对于控件:imageViewId在其的下面
relLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT ,-1) 与
relLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT ,RelativeLayout.TRUE) 与
relLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT )
表示的是一样的表示子控件在父控件的右边
(
relLayoutParams.setMargins(arg0, arg1, arg2, arg3)或者 relLayoutParams.topMargin=5 等等离某元素的左、上、右、下的距离单位
)
下面就将verb 相关常量名列如下:
relLayoutParams.alignWithParent=true 如果对应的兄弟元素找不到的话就以父元素做参照物
RelativeLayout.CENTER_HORIZONTAL 在父控件中水平居中
RelativeLayout.CENTER_VERTICAL 在父控件中垂直居中
RelativeLayout.CENTER_IN_PARENT 相对于父控件完全居中
RelativeLayout.ALIGN_PARENT_BOTTOM 紧贴父控件的下边缘
RelativeLayout.ALIGN_PARENT_TOP 紧贴父控件的上边缘
RelativeLayout.ALIGN_PARENT_LEFT 紧贴父控件的左边边缘
RelativeLayout.ALIGN_PARENT_RIGHT 紧贴父控件的右边缘
RelativeLayout.ABOVE 在某元素的上方 需要第二个参数为某元素的ID
RelativeLayout.BELOW 在某元素的下方 需要第二个参数为 某元素的ID
RelativeLayout.LEFT_OF 在某元素的左边 需要第二个参数为某元素的ID
RelativeLayout.RIGHT_OF 在某元素的右边 需要第二个参数为 某元素的ID
RelativeLayout.ALIGN_TOP 本元素的上边缘和某元素的的上边缘对齐 需要第二个参数为某元素的ID
RelativeLayout.ALIGN_BOTTOM 本元素的上边缘和某元素的的下边缘对齐 需要第二个参数为某元素的ID
RelativeLayout.ALIGN_LEFT 本元素的上边缘和某元素的的左边缘对齐 需要第二个参数为某元素的ID
RelativeLayout.ALIGN_RIGHT 本元素的上边缘和某元素的的右边缘对齐 需要第二个参数为某元素的ID
RelativeLayout.ALIGN_BASELINE 本元素的基线和某元素的的基线对齐 需要第二个参数为某元素的ID
http://www.aiuxian.com/article/p-2885445.html
RelativeLayout.addRule()方法的更多相关文章
- RelativeLayout.LayoutParams.addRule()方法
1.应用场景 在使用RelativeLayout布局的时候,通常在载入布局之前在相关的XML文件中进行静态设置即可.但是,在有些情况下,我们需要动态的设置布局 的属性,在不同条件下设置不同的布局排列方 ...
- Android 动态改变布局属性RelativeLayout.LayoutParams.addRule()
我们知道,在 RelativeLayout 布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可. 但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的 ...
- 代码中动态改变布局属性RelativeLayout.LayoutParams.addRule()
我们知道,在 RelativeLayout 布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可. 但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的 ...
- Android addRule()
布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可. 但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的布局排列方式,这时候就需要用到 Relati ...
- Android开发之布局--RelativeLayout布局
RelativeLayout 相对布局 true或false属性 Layout_centerHorizontal 当控件位于父控件的横向中间位置 Layout_centerVertical 当 ...
- 代码布局relativeLayout
后台布局 在ANDROID 开发中有时候我们需要在后台添加布局文件这里我们来说一下后台添加RelativeLayout文件的方式: RelativeLayout,顾名思义,就是以“相对”位置/对齐 ...
- Catalina.createDigester方法详细理解
这个方法主要设置(这个方法很重要,贵在理解,虽然还没学过设计模式..) 1.遇到<server>标签时创建StandardServer实例 设置StandardServer类内部的相关 ...
- ListView / GirdView Adpater的getView方法,首项多次调用
通过Adapter为AbslistView提供内容是一个常见的做法:在ListView或者GridView的Adapter中的getView()方法中,加入一行日志,看getView()被调用的情况 ...
- android:gravity 和 android:layout_Gravity属性
LinearLayout有两个非常相似的属性: android:gravity 与android:layout_gravity. 他们的区别在于: android:gravity 属性是对该view中 ...
随机推荐
- 复杂一些的SQL语句
表连接查询得到结果集后添加数据 INSERT INTO #saleSplitProduct(saleorderID,ProductCode,ProductNum,ProductPrice, produ ...
- Maintain Aspect Ratio Mixin
Maintain Aspect Ratio Mixin Maintain the aspect ratio of a div with CSS RESPONSIVE ASPECT RATIOS WIT ...
- Simula-Virtual function
Simula is the name of two simulation programming languages, Simula I and Simula 67, developed in the ...
- Kattis - Babelfish
Babelfish You have just moved from Waterloo to a big city. The people here speak an incomprehensible ...
- STM32 IIC双机通信—— HAL库硬件IIC版
参考传送门 关于IIC的原理这里我就不多说了,网上有很多很好的解析,如果要看我个人对IIC的理解的话,可以点击查看,这里主要讲一下怎样利用STM32CubeMx实现IIC的通讯,经过个人实践,感觉HA ...
- css3特效第一篇--旋转的背景&翻书效果
一.html遮盖层与css3的旋转动画 >效果图(加载可能会慢一点儿,请稍等...): >实现思路:在一个大的div中装入一个底层img和顶层的div(里面的内容按照以上图片呈现的样式布局 ...
- DML语句(添加、更新和删除记录)
a.添加记录(一次插入一行记录) insert into 表名(字段名,字段名...) values (字段值,字段值...) insert into person ...
- js Math常用方法
------------------------ 向上取整,有小数就整数部分加1 Math.ceil(5/2) ------------------------ 四舍五入. Math.round(5/ ...
- ASP.NET-AJAX.FORM提交附件失败
尝试了不少时间在AJAX.FORM提交附件,发现完全不行,经过下面的这个博客的介绍,使用ajax.form.js插件提交成功,记录一下该博文网址和结论: 相关网址:http://www.cnblogs ...
- HDU 4418 高斯消元法求概率DP
把两种状态化成2*n-2的一条线上的一种状态即可.很容易想到. 高斯列主元法,不知为什么WA.要上课了,不玩了...逃了一次课呢.. #include <iostream> #includ ...