我正在嘗試使用onTouchListener使imageview可拖動。這是我迄今爲止的代碼拖動Android如何在relativelayout中拖動imageview,然後將其放回原位
switch (ME.getAction()){
case MotionEvent.ACTION_DOWN://IF USER PRESSED ON THE IMAGE
origix = v.getLeft(); //save original x coordinate calculated with the offset
origiy = v.getTop();
break;
case MotionEvent.ACTION_MOVE://IF USER IS MOVING THE IMAGE
System.out.println("MOVED");
int x_cord = (int)ME.getRawX(); //get coordinate of the user touch
int y_cord = (int)ME.getRawY();
//set the image to the new coordinates based on where the user is touching and dragging
MarginLayoutParams marginParams = new MarginLayoutParams(v.getLayoutParams());
marginParams.setMargins(x_cord - origix, y_cord - origiy,0, 0);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(marginParams);
v.setLayoutParams(layoutParams);
MOVED = true; //mark that the image has been move
break;
變量'v'是imageview。我得到的問題是,getRawX和getRawY沒有返回正確的座標(我認爲...)。當我嘗試觸摸圖像然後嘗試拖動它時,圖像開始從另一個位置拖動。通常比原來的位置更高,更多。的ImageView的處於RelativeLayout的和當移動開始我使用API 10
喜看看這個樣本http://androidrox.wordpress.com/2011/05/13/android-sample-app-拖放圖像使用觸摸/ – itsrajesh4uguys