我想在我的应用中移动任何普通视图以及滑动。
我可以使用 onTouch 方法中的 OnTouchListener 检测滑动。但是无法移动视图以及滑动。
我想将视图与滑动一起移动。
我认为我需要在onTouch方法中实现一些东西来移动视图或项目以及滑动,但我不知道。
任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
你只需要view.setTranslationX(diffX)
用于X坐标,view.setTranslationY(diffY)
用于Y坐标,而MotionEvent.ACTION_MOVE
用于onTouch()
方法。
view.setOnTouchListener(new View.OnTouchListener() {
float downX, downY, nowX, nowY, diffX, diffY;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
downX = event.getRawX();
downY = event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
nowX = event.getRawX();
nowY = event.getRawY();
diffX = nowX - downX;
diffY = nowY - downY;
v.setTranslationX(diffX);
v.setTranslationY(diffY);
break;
case MotionEvent.ACTION_UP:
break;
}
return true;
}
});