2012-04-24 6 views
0

現在、ユーザーがリストから画像をいくつか追加して画像をドラッグできるようにするAndroidアプリケーションを作っています。RelativeLayoutのアンドロイドドラッグイメージビュー

私はonTouchメソッドを使用して画像をドラッグできます。 イメージビューを左または下のサイズにドラッグしたときに問題が発生しました

イメージビューのサイズが自動的に変更され、レイアウトにドラッグできません。

イメージビューのサイズを変更せずにレイアウト外にドラッグするにはどうすればよいですか?

@Override 
public boolean onTouch(View view, MotionEvent event) { 
    ImageView imageView = (ImageView)view; 
    imageView.bringToFront(); 


    // Handle event 
    switch (event.getAction() & MotionEvent.ACTION_MASK) { 
     case MotionEvent.ACTION_DOWN: { 
      startPoint.set(event.getX(), event.getY()); 
      currentMode = EVENT_DRAG; 
      break; 
     } 

     case MotionEvent.ACTION_UP: 
     case MotionEvent.ACTION_POINTER_UP: { 
      currentMode = EVENT_NONE; 
      break; 
     } 

     case MotionEvent.ACTION_MOVE: { 
      RelativeLayout.LayoutParams layoutPrarms = (RelativeLayout.LayoutParams)imageView.getLayoutParams(); 
      int left = layoutPrarms.leftMargin + (int)(event.getX() - startPoint.x); 
      int top = layoutPrarms.topMargin + (int)(event.getY() - startPoint.y); 
      layoutPrarms.leftMargin = left; 
      layoutPrarms.topMargin = top; 
      imageView.setLayoutParams(layoutPrarms);  
      break; 
     } 
    } 

    // Indicate event was handled 
    return true; 
} 

答えて

1

親レイアウトをLinearLayoutにしてみてください。 RelativeLayoutsを使用してこの問題に遭遇しました。

+0

私はLinearLayoutを試しましたが、まだ運はありません:他の考えですか? – user1509803