2012-04-24 69 views
0

我目前正在制作一个android应用程序,允许用户从列表中添加一些图像到屏幕上,并允许用户在图像上拖动图像。Android在RelativeLayout中拖动图像视图调整大小

我可以通过使用onTouch方法拖动图像。 但我遇到了一个问题,当我拖动图像视图到左侧或底部尺寸

imageview将自动调整大小,不能将其拖出到布局。

如何在不改变图像视图大小的情况下将其拖到布局外?

@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,但仍然没有运气:s,任何其他的想法? – user1509803 2016-08-02 10:12:38

相关问题