Android实现View拖拽跟随手指移动效果
今天想实现这个功能,但是网上搜索代码,都是利用setPadding,setMargin等方法去实现的,这在Android4.0以前是没问题的,但是,android4.0后系统已经提供了更简单的方法给我们用了,就是setTranslationX()和setTranslationY()。这两个是View的属性方法。现在我就用这两个方法实现一个View可以跟着手指移动拖拽的效果。代码非常非常简单:
publicclassDragViewextendsTextView{
floatmoveX;
floatmoveY;
publicDragView(Contextcontext){
super(context);
}
publicDragView(Contextcontext,AttributeSetattrs){
super(context,attrs);
}
@Override
publicbooleanonTouchEvent(MotionEventevent){
switch(event.getAction()){
caseMotionEvent.ACTION_DOWN:
moveX=event.getX();
moveY=event.getY();
break;
caseMotionEvent.ACTION_MOVE:
setTranslationX(getX()+(event.getX()-moveX));
setTranslationY(getY()+(event.getY()-moveY));
break;
caseMotionEvent.ACTION_UP:
break;
caseMotionEvent.ACTION_CANCEL:
break;
}
returntrue;
}
}
总结
以上所述是小编给大家介绍的Android实现View拖拽跟随手指移动效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!