我有一个按钮,我可以将它拖动到屏幕上的任何位置,但它在拖动时会移出屏幕,所以如何只在屏幕内拖动,这样它就不会出现在屏幕外
Button.setOnTouchListener(new TextView.OnTouchListener() {
public boolean onTouch(View view, MotionEvent event) {
X_button = (int) event.getRawX();
Y_button= (int) event.getRawY();
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
RelativeLayout.LayoutParams lParams = (RelativeLayout.LayoutParams) view.getLayoutParams();
_xDelta = X_button - lParams.leftMargin;
_yDelta = Y_button - lParams.topMargin;
break;
case MotionEvent.ACTION_UP:
if(!isMoving)
{
view.performClick();
}
isMoving=false;
break;
case MotionEvent.ACTION_POINTER_DOWN:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
case MotionEvent.ACTION_MOVE:
isMoving=true;
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) view
.getLayoutParams();
layoutParams.leftMargin = X_button - _xDelta;
layoutParams.topMargin = Y_button - _yDelta;
layoutParams.rightMargin = -250;
layoutParams.bottomMargin = -250; …Run Code Online (Sandbox Code Playgroud)