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拖拽跟随手指移动效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!