今天想實現這個功能,但是網上搜索代碼,都是利用setPadding,setMargin 等方法去實現的,這在Android 4.0 以前是沒問題的,但是,android/70238.html">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拖拽跟隨手指移動效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答