Android 动态改变布局属性RelativeLayout.LayoutParams「建议收藏」

Android 动态改变布局属性RelativeLayout.LayoutParams「建议收藏」我们知道,在RelativeLayout布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可。但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的布局排列方式,这时候就需要用到RelativeLayout.LayoutParams.addRule()方法,该方法有两种重载方式:首先初始化:RelativeLayout.LayoutParamslp=(RelativeLayout.LayoutParams)mBottomLayout.ge

大家好,又见面了,我是你们的朋友全栈君。

我们知道,在 RelativeLayout 布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可。

但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的布局排列方式,这时候就需要用到 RelativeLayout.LayoutParams.addRule() 方法,该方法有两种重载方式:
首先初始化: RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) mBottomLayout.getLayoutParams();

addRule(int verb) :用此方法时,所设置节点的属性不能与其它兄弟节点相关联或者属性值为布尔值(布尔值的属性,设置时表示该属性为 true,不设置就默认为 false),比如:addRule(RelativeLayout.CENTER_VERTICAL) 就表示在 RelativeLayout 中的相应节点是垂直居中的。

addRule(int verb, int anchor) :该方法所设置节点的属性必须关联其它的兄弟节点或者属性为布尔值( 属性为 布尔值时,anchor 为 RelativeLayout.TRUE 表示 true,anchor 为0表示 false),比如:addRule(RelativeLayout.ALIGN_LEFT, R.id.date) 就表示 RelativeLayout 中的相应节点放置在一个 id 值为 date 的兄弟节点的左边。

若想修改xml中的某一属性 需要先删除 使用 lp.removeRule();方法

最后对应布局.setLayoutParams(lp)注入添加的属性

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160864.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ACM 各大OJ平台以及题目分类[通俗易懂]

    ACM 各大OJ平台以及题目分类[通俗易懂]本文章转自:http://blog.csdn.net/liujiuxiaoshitou/article/details/7  OJ是OnlineJudge系统的简称,用来在线检测程序源代码的正确性。著名的OJ有RQNOJ、URAL等。国内著名的题库有北京大学题库、浙江大学题库等。国外的题库包括乌拉尔大学、瓦拉杜利德大学题库等。简介:  OnlineJudge系统(简

    2022年6月15日
    30
  • tomcat 配置环境变量

    tomcat 配置环境变量最近换电脑,备注一下tomcat环境变量配置 1、官网下载tomcat,并解压 2、找到tomcat解压路径,配置三个环境变量新建CATALINA_HOME环境变量,CATALINA_HOME=E:\tomcat\apache-tomcat-8.5.38新建CATALINA_BASE环境变量,CATALINA_BASE=E:\tomcat\a…

    2022年4月28日
    46
  • ARM 架构简介_芯片arm架构

    ARM 架构简介_芯片arm架构一小时教你学会ARM架构原创 2017年10月31日00:00:002499本文来自作者 刘盼 在 GitChat 上分享,「阅读原文」查看交流实录「文末高能」编辑|奕迅架构的演变历史我们首先介绍ARMLtd,这里先说的是公司而不是架构。ARM的发展历史非常久远,超乎许多人的想象。首先,我们提供一些背景信息,ARM成立于20世纪90年代末,从另一家位于剑桥的公司分拆而来,那家公司…

    2022年10月14日
    0
  • vld安装教程_vos安装

    vld安装教程_vos安装做个搬运工https://www.cnblogs.com/miao-zp/p/6374311.html

    2022年10月26日
    0
  • 【技术】正則表達式—匹配电话号码,网址链接,Email地址

    【技术】正則表達式—匹配电话号码,网址链接,Email地址

    2022年3月6日
    38
  • 打印机设置共享以及共享时无法连接,报错0X00000006解决方法[通俗易懂]

    打印机设置共享以及共享时无法连接,报错0X00000006解决方法[通俗易懂]取消禁用Guest用户,因为别人要访问安装打印机的按个电脑就是以guest账户访问的。 点击【开始】按钮,在【计算机】上右键,选择【管理】,如下图所示: 在弹出的【计算机管理】窗口中找到【Guest】用户 双击【Guest】,打开【Guest属性】窗口,确保【账户已禁用】选项没有被勾选 设置共享目标打印机:点击【开始】按钮,选择【设备和打印机】,如下图: 在…

    2022年5月14日
    614

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号