Android如何平移一个View
16lz
2021-01-23
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); } });
注意: 上述列举的方法,有的参数代表的是偏移量,有的参数代表的是坐标。
更多相关文章
- Android ListView的item点击无响应的解决方法
- Android代码混淆常见配置
- Android 的http通信(原生代码)
- Android调用JNI出错 java.lang.UnsatisfiedLinkError: No implem
- Android 属性动画(Property Animation) 完全解析 (上)
- android中使用jni,ndk的C语言回调方法
- [Android] 一份代码,两个版本