这是我在项目中的要求,我在android上开发了一个应用程序。画布覆盖整个屏幕,我在画布上绘制位图取决于画布的纵横比。如何限制绘图在位图之外,任何人都可以帮忙。
答案 0 :(得分:0)
你的onTouch应该是这样的,是吗?
public boolean onTouch(View v, MotionEvent event) {
x = (int) event.getRawX();
y = (int) event.getRawY();
/* other code */
}
嗯,你可以做的是限制onTouch方法在X和Y不在位图上时做任何事情。
如果onTouch“确实”消耗了一个事件,那么onTouch也会返回一个布尔值。在这种情况下,当X,Y值在位图上时,您希望返回true;如果X,Y值不在位图上,则返回false。此外,如果您希望事件的行为就像他们在离开位图时抬起手指一样,您甚至可以再次调用onTouch传递以下事件:
this.onTouch(v, MotionEvent.ACTION_UP);
我希望这有帮助!