我是Android开发的新手,我需要开发一些带有一些规范的视图
我已经通过使用这些步骤here开发了旋转,但是如果一根手指突然被移除,则会出现跳跃视图等问题。
并且对于移动使用此代码它运作良好,但认为它是突然移动的问题。
public static View.OnTouchListener getTouchListener(){
View.OnTouchListener onTouchListener = new View.OnTouchListener() {
int prevX, prevY;
@Override
public boolean onTouch(View v, MotionEvent event) {
final ConstraintLayout.LayoutParams par = (ConstraintLayout.LayoutParams) v.getLayoutParams();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN: {
v.bringToFront();
prevX = (int) event.getRawX();
prevY = (int) event.getRawY();
par.bottomMargin = -8 * v.getHeight();
par.rightMargin = -8 * v.getWidth();
v.setLayoutParams(par);
return true;
}
case MotionEvent.ACTION_MOVE: {
par.topMargin += (int) event.getRawY() - prevY;
prevY = (int) event.getRawY();
par.leftMargin += (int) event.getRawX() - prevX;
prevX = (int) event.getRawX();
v.setLayoutParams(par);
return true;
}
}
return false;
}
};
return onTouchListener;
}
我需要有人帮我把这三个功能放在一起,没有任何问题 提示:如果有图书馆,欢迎光临。
答案 0 :(得分:0)
经过长时间搜索如何实现这样的东西,我终于在GitHub上找到了一个解决我的问题的存储库 你可以找到做here
的课程以及使用这些类的方法是:
yourView.setOnTouchListener(new MultiTouchListener());
通过这种方式你可以缩放,放大/缩小(通过捏合)并通过捏合旋转视图。
答案 1 :(得分:0)
搜索内容的完美示例:see here(example)
快乐的编码!