Код
private RelativeLayout mToolbar;
mToolbar = (RelativeLayout) myview.findViewById(R.id.toolbar);
mToolbar.setOnTouchListener(new View.OnTouchListener() {
WindowManager.LayoutParams updatedParameters = finalParameters;
double x;
double y;
double pressedX;
double pressedY;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
x = updatedParameters.x;
y = updatedParameters.y;
pressedX = event.getRawX();
pressedY = event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
updatedParameters.x = (int) (x + (event.getRawX() - pressedX));
updatedParameters.y = (int) (y + (event.getRawY() - pressedY));
wm.updateViewLayout(myview, updatedParameters);
default:
break;
}
return false;
}
});
У меня есть служба, и приведенный выше код может перемещаться по этой службе на экране ... Она работала раньше, когда мне приходилось касаться кнопки и перемещать ее.Я переключил его на макет сейчас, и он больше не работает. Почему это не работает?Тот же код, который я использовал вместо кнопки, и он работал нормально.Всегда ли onTouch должен быть кнопкой, или это могут быть макеты или текстовые представления?