0

現在、ユーザーがリストから画面に画像を追加できるAndroidアプリケーションを作成しており、ユーザーは画像をドラッグできます。

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;
}
4

1 に答える 1

1

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

于 2012-08-16T20:00:36.790 に答える