我已經在線性佈局中添加了一個view
,我想在運行時按用戶推送它的方向移動view
,因爲我在視圖上添加了onTouchListner
,以及I定義了一個手勢檢測器。如何使用手勢檢測器和動畫來移動視圖
在gestureDetector
的onFling
方法我已經開始翻譯動畫視圖上
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
mX = e2.getX();
mY = e2.getY();
TranslateAnimation transA = new TranslateAnimation(
e1.getX(),e2.getX(),e1.getY(),e2.getY());
transA.setDuration(1000);
transA.setAnimationListener(MainActivity.this);
mBtn.startAnimation(transA);
return super.onFling(e1, e2, velocityX, velocityY);
}
翻譯動畫作品很好,但動畫視圖後保持原來的位置。要移動以目標位置我設置次數x & y屬性爲MX和我
@Override
public void onAnimationEnd(Animation animation) {
mBtn.setX(mX);
mBtn.setY(mY);
}
但這不能正常工作。請幫助,如果有任何其他方式來實現這一點,請讓我知道。