Android开发——RelativeLayout.LayoutParams的使用「建议收藏」

Android开发——RelativeLayout.LayoutParams的使用「建议收藏」前言在日常的Android开发当中,我们少不了需要动态改变控件在RelativeLayout界面的位置。那么我们就需要使用到RelativeLayout.LayoutParams。RelativeLayout.LayoutParamsRelativeLayout.LayoutParams是一个RelativeLayout的布局参数,我们改变控件的就需要使用到。初始化//包裹内容Rel…

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

前言

在日常的Android开发当中,我们少不了需要动态改变控件在RelativeLayout界面的位置。那么我们就需要使用到RelativeLayout.LayoutParams。

RelativeLayout.LayoutParams

RelativeLayout.LayoutParams是一个RelativeLayout的布局参数,我们改变控件的就需要使用到。

初始化

// 包裹内容
RelativeLayout.LayoutParams layoutParams = new  RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT);

// 全部内容
RelativeLayout.LayoutParams layoutParams = new  RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);

其中 new RelativeLayout.LayoutParams()需要填写宽度和高度两个参数。

addRule方法

addRule方法是我们最常用到的,动态设置控件的位置是一定要使用这个方法的。这个方法有两种方式

addRule(int verb)

verb主要的参数有:

  • ABOVE
  • ALIGN_BASELINE
  • ALIGN_BOTTOM
  • ALIGN_END
  • ALIGN_LEFT
  • ALIGN_PARENT_BOTTOM
  • ALIGN_PARENT_END
  • ALIGN_PARENT_LEFT
  • ALIGN_PARENT_RIGHT
  • ALIGN_PARENT_START
  • ALIGN_PARENT_TOP
  • ALIGN_RIGHT
  • ALIGN_START
  • ALIGN_TOP
  • BELOW
  • CENTER_HORIZONTAL
  • CENTER_IN_PARENT
  • CENTER_VERTICAL
  • END_OF
  • LEFT_OF
  • RIGHT_OF
  • START_OF
  • TRUE

addRule(int verb, int subject)

verb主要的参数有:

  • ABOVE
  • ALIGN_BASELINE
  • ALIGN_BOTTOM
  • ALIGN_END
  • ALIGN_LEFT
  • ALIGN_PARENT_BOTTOM
  • ALIGN_PARENT_END
  • ALIGN_PARENT_LEFT
  • ALIGN_PARENT_RIGHT
  • ALIGN_PARENT_START
  • ALIGN_PARENT_TOP
  • ALIGN_RIGHT
  • ALIGN_START
  • ALIGN_TOP
  • BELOW
  • CENTER_HORIZONTAL
  • CENTER_IN_PARENT
  • CENTER_VERTICAL
  • END_OF
  • LEFT_OF
  • RIGHT_OF
  • START_OF
  • TRUE

subject参数是我们另外的控件ID。

setMargins(int left, int top, int right, int bottom)

当前控件设置边距,参数分别是左边,上边,右边,下边。单位是px。

setMarginStart(int start)

当前控件设置开始边距,国内默认是左边的边距,单位是px。

setMarginEnd(int end)

当前控件设置结束边距,国内默认是右边的边距,单位是px。

总结

上述的内容是我阅读RelativeLayout.LayoutParams的源码结合实际开发经常用到的方法笔记。希望对看到这篇博客的小伙伴们有帮助。

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/160822.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • javascript学习目录

    javascript学习目录

  • Qt编写的软件在线升级系统(客户端)

    Qt编写的软件在线升级系统(客户端)

  • Unity 协程

    Unity 协程协程前言调用方式停止方式yiledreturn语句执行时机WaitForSeconds(floatTime)WaitForSecondsRealtime(floattime)WaitForEndOfFrame()WaitForFixedUpdate()WaitUntil(Funcpredicate)WaitWhile(Funcpredicate)实现自定义函数实际开发中使用建议前言协程是unity提供的一个特殊的机制,他的特点就是可以方便的实现流程化的东西。但是就他的效率而言个人感觉并不乐观,

  • 感谢 Gridea,让我有动力写作

    感谢 Gridea,让我有动力写作1.真的要感谢Gridea,让我对写作产生热忱。一直有在各大博客平台输出的习惯,但是都没有持续更新。有的平台广告太多,写不下去。有的平台排版复杂,写文章1个小时,排版要2个小时。所以后面换成了静态

  • 微软邮箱设置smtp_邮件服务器怎么设置

    微软邮箱设置smtp_邮件服务器怎么设置配置SMTP服务器和自定义警报和反馈请求电子邮件09/01/2016本文内容AzureDevOpsServer2020|AzureDevOpsServer2019|TFS2018-TFS2013备注AzureDevOpsServer以前名为VisualStudioTeamFoundationServer。若要使用反馈请求和警报,你必须为Azure…

  • js获取元素到文档区域document的(横向、纵向)坐标的两种方法

    js获取元素到文档区域document的(横向、纵向)坐标的两种方法获取页面中元素到文档区域document的横向、纵向坐标的两种方法及其比较在js控制元素运动的过程中,对于页面元素坐标位置的获取是经常用到的,这里主要总结下两种方法:一:通过叠加元素对象和它的offsetParent(如果存在)的offsetLeft/offsetTop属性来实现在阅读javascript高级程序设计第三版DOM部分时,了解到要获取某个元素在页面上的偏移量,需要将这个元素的offsetLeft和offsetTop与其offsetParent的相同属性相加,一直循环直至根元素。所以,要得到

发表回复

您的电子邮箱地址不会被公开。

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