Android实现View拖拽跟随手指移动效果
更新时间:2017年08月21日 14:13:21 作者:魏成林
这篇文章主要介绍了Android实现View拖拽跟随手指移动效果,主要使用setTranslationX() 和setTranslationY() 属性方法实现的,需要的朋友参考下吧
今天想实现这个功能,但是网上搜索代码,都是利用setPadding,setMargin 等方法去实现的,这在Android 4.0 以前是没问题的,但是,android 4.0 后系统已经提供了更简单的方法给我们用了,就是setTranslationX()
和setTranslationY()
。这两个是View的属性方法。现在我就用这两个方法实现一个View可以跟着手指移动拖拽的效果。代码非常非常简单:
public class DragView extends TextView { float moveX; float moveY; public DragView(Context context) { super(context); } public DragView(Context context, AttributeSet attrs) { super(context, attrs); } @Override public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: moveX = event.getX(); moveY = event.getY(); break; case MotionEvent.ACTION_MOVE: setTranslationX(getX() + (event.getX() - moveX)); setTranslationY(getY() + (event.getY() - moveY)); break; case MotionEvent.ACTION_UP: break; case MotionEvent.ACTION_CANCEL: break; } return true; } }
总结
以上所述是小编给大家介绍的Android实现View拖拽跟随手指移动效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
Android ListView 子控件onClick正确获取position的方法
这篇文章主要介绍了Android ListView 子控件onClick正确获取position的方法,非常不错,具有参考借鉴价值,需要的的朋友参考下吧2017-01-01
最新评论