首先我们都知道在Activity中重写方法onTouchEvent(MotionEvent event)时,我们可以通过event.getX()和event.getY()取到触发位置的坐标。
最近做了一个项目,要取到触发点在ImageView中的相对坐标位置,当时想了好长时间,查了好些资料,都没有找到答案。最后灵机一动,
在Imageview中发现了setOnTouchListener事件,就想着这杨是否可以取到我要的坐标,结果一试,果真取到了我要的数据。
imageView.setOnTouchListener(onTouchListener);
//事件监听方法
private OnTouchListener onTouchListener = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
float x = event.getX();
float y = event.getY();
AndroidUtil.displayToast(Test2.this, "x:" + x + "; y:" + y);
break;
default:
break;
}
return false;
}
};