一、通过ViewGroup.LayoutParams()

以控件在RelativeLayout中为例,其他布局中也是一样的,可以通过修改控件的magin属性来改变控件的位置。

// 需要注意的是,此时构造参数中的两个属性为控件的宽和高(px),而不是父布局的宽和高。
RelativeLayout.LayoutParams layoutparams = new RelativeLayout.LayoutParams(100,100);
layoutparams.setMargin(left,top,right,bottom);//直接设置四个方向的magin
//layoutparams.addRule(RelativeLayout.CENTER_VERTICAL)//添加控件在布局中显示的规则。
layoutparams.setLeftMargin(left);
layoutparams.setTopMargin(top);
layoutparams.setRightMargin(right);
layoutparams.setBottomMargin(bottom);
mButton.setLayoutParams(layoutparams);//mButton为你想要修改的控件

二、通过属性动画

移动 translationXtranslationY

  • float translationX :表示在X轴上的平移距离,以当前控件为原点,向右为正方向,参数 translationX 表示移动的距离。
  • float translationY :表示在 Y 轴上的平移距离,以当前控件为原点,向下为正方向,参数 translationY 表示移动的距离。
ObjectAnimator animator = ObjectAnimator.ofFloat(tv, "translationX", 0, 200, -200,0);
animator.setDuration(2000);
animator.start();
指定的移动距离是(0, 200, -200,0),所以控件会从自身所有位置向右移动 200 像素,然后再移动到距离原点-200 的位置,最后回到原点//参数一:要操纵的view;
//参数二:要操纵的属性(translationX、translationY、rotationX、rotationY、rotation、scaleX、scaleY, alpha)
//参数三:可变数组参数,代表属性变化的一个取值过程。
ObjectAnimator translationX = ObjectAnimator.ofFloat(mTestView, “translationX”, 300);

Android中动态改变布局中控件的位置相关推荐

  1. Android中动态初始化布局参数以及ConstraintLayout使用中遇到的坑

    Android中动态初始化布局以及ConstraintLayout遇到的一个坑 ConstraintLayout是Android中的一个很强大的布局,它通过控件之间的相对定位,来完成一个layout中 ...

  2. android动态改变布局,Android 动态添加布局的两种方式

    前言 大多数时候我们布局都是用xml来布局的,但有些时候也是会用到动态布局的,尤其是在一些大项目中,动态布局更是体现的淋漓尽致. 所以今天我们就来学习一些动态加添布局的两种方式,分别是 动态添加xml ...

  3. 在form2中调用form1中的方法并改变form1中控件值的另一种方法

    在窗体编程中,经常碰到到要在form2中调用form1中的方法并改变form1中控件值,但是又不能用new form1这种方法,因为这是生成一个实例. 网上有些说法是用委托和事件,笔者尝试没有成功,可 ...

  4. Android 中LayoutInflater(布局加载器)之介绍篇

    本文出自博客Vander丶CSDN博客,如需转载请标明出处,尊重原创谢谢 博客地址:http://blog.csdn.net/l540675759/article/details/78099358 前 ...

  5. Android中的约束布局

    文章目录 1 Android中的约束布局 1.1 约束布局的重要属性 1.2 约束布局示例 1 Android中的约束布局 1.1 约束布局的重要属性 重要属性: app:layout_constra ...

  6. Android中的表格布局

    文章目录 1 Android中的表格布局 1 Android中的表格布局 重要属性: android:stretchColumns android:shrinkColumns android:coll ...

  7. Android中的相对布局

    文章目录 1 Android中的相对布局 1.1 相对布局的重要属性 1.2 相对布局示例 1 Android中的相对布局 1.1 相对布局的重要属性 相对于父容器(取值:true/false),如: ...

  8. asp.net panel 加html,ASP.NET 页面中动态增加的控件、添加事件

    要求:页面上有一个Add按钮,每点击一次该按钮,页面上动态创建一个WebPartZone! 提醒:WebPartZone只能在OnInit或之前才能创建,否则报异常! 大家都知道,按钮的点击事件是在R ...

  9. Android中的网格布局

    文章目录 1 Android中的网格布局 1 Android中的网格布局 重要属性: android:rowCount(行数量) android:columnCount (列数量) android:l ...

最新文章

  1. optee的RPC设计(模型)详解
  2. ast.literal_eval
  3. C++实现有序表折半查找
  4. ChaiNext:多空胶着
  5. Mongoose源码分析之--简单的服务器搭建(C语言)
  6. 闪修侠、极客修、千机网,手机维修选哪家?
  7. android go官方下载,dji go 4 app官网下载-DJI GO 4 安卓版v4.3.40-pc6智能硬件网
  8. xlsx文件打开乱码_xlsx文件怎么打开乱码
  9. Java的OOP编程思想
  10. 中国首座!智慧机场建成投运,BIM技术打造数字底图
  11. 43张图还原煤厂各工段的全工艺流程,构建数字孪生体
  12. steam加速_《盗贼之海》发行之初荣登Steam榜首,UU加速器为您开黑提供保障
  13. BI项目经理入门指南:用最详细的图解,带你落地企业自助分析项目
  14. 科来网络分析系统11.1(技术交流免费版)
  15. 遥感原理与应用 【I】
  16. 多旅行商问题(Multiple Traveling Salesman Problem, MTSP):单仓库多旅行商问题及多仓库多旅行商问题(含动态视频)
  17. 洛谷P5708 【深基2.习2】三角形面积__C++描述
  18. 复制 python cache 文件到预训练模型
  19. Spring Cloud ZooKeeper Discovery Client Not Register on ZooKeeper when using SpringBootServletInitia
  20. 计算机无法投影,如果无法连接计算机和投影仪怎么办

热门文章

  1. 结构型模式中最能体现扩展性模式的是?
  2. 如何使用SHOW WARNINGS?
  3. 如何快速制作彩色二维码图片?
  4. 【EMC专题】电快速瞬变脉冲群抗扰度测试
  5. 使用宝塔面板搭建jumpserver开源堡垒机
  6. MySQL中用户密码存在特殊字符的使用场景
  7. Photoshop 实例教程
  8. 【C#】字符串倒序输出
  9. 河南分销系统开发|服装行业如何做引流裂变?
  10. 如何在零件中使用SOLIDWORKS DimXpert