Android如何平移一个View

最近公司招聘Android开发同学,发现相当多的同学对此问题了解有限,因此列举几个平移的方法如下。

1 View方法 setTranslationX setTranslationY

Android3.0版本开始增加了一些用于动画的属性方法

例如:setTranslationX() setTranslationY() setRotation() setAlpha()

以下代码可以完成平移

TextView tv_test;Button btn_test;btn_test.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                tv_test.setTranslationY(500);            }        });

属性动画平移也是调用的setTranslation方法:

btn_test.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                ObjectAnimator animator = ObjectAnimator.ofFloat(tv_test,"translationX",50.0f);                animator.setDuration(100);                animator.start();            }        });

2 View方法 layout

layout方法可以改变view的位置和大小,只做平移属于大材小用。

以下代码可以完成平移

btn_test.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                tv_test.layout(0,550,tv_test.getMeasuredWidth(),550+tv_test.getMeasuredHeight());            }        });

3 View方法 offsetLeftAndRight offsetTopAndBottom

以下代码可以完成平移

btn_test.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                tv_test.offsetLeftAndRight(100);                tv_test.offsetTopAndBottom(100);            }        });

注意: 上述列举的方法,有的参数代表的是偏移量,有的参数代表的是坐标。

更多相关文章

  1. Android ListView的item点击无响应的解决方法
  2. Android代码混淆常见配置
  3. Android 的http通信(原生代码)
  4. Android调用JNI出错 java.lang.UnsatisfiedLinkError: No implem
  5. Android 属性动画(Property Animation) 完全解析 (上)
  6. android中使用jni,ndk的C语言回调方法
  7. [Android] 一份代码,两个版本

随机推荐

  1. 史上最全的Android面试题集锦(完结)
  2. Android注入事件的三种方法比较
  3. android 数据库SQL 框架例子
  4. react native 相关资料
  5. 在Ecplise关联android4.2和android suppo
  6. Android(安卓)5.1 启动有线网卡并为其分
  7. android 拨号器
  8. Applying Styles and Themes - 应用Style
  9. Eclipse 查看Android(安卓)程序在模拟器
  10. Android(安卓)8.1.0 SystemUI 修改之 -