1.getRawX()与getX()的区别
getRawX():绝对坐标
getX():相对坐标
mBtn_sate.setOnTouchListener(new OnTouchListener()
{
@Override
public boolean onTouch(View v, MotionEvent event)
{
if(event.getAction() == MotionEvent.ACTION_DOWN)
{
Log.e("", "ACTION_DOWN=" + v.toString());
}
else if(event.getAction() == MotionEvent.ACTION_UP)
{
Log.e("", "ACTION_UP=" + v.toString());
}
else if(event.getAction() == MotionEvent.ACTION_MOVE)
{
//getRawX()指控件在屏幕上的X坐标
if(event.getRawX() > v.getLeft() && event.getRawX() v.getTop() && event.getRawY()
{
Log.e("", "超出 ");
}
//getX()相对于控件X坐标的距离
if(event.getX() (v.getRight() - v.getLeft()) || event.getY() > (v.getBottom() - v.getTop()))
{
Log.e("", "越界 ");
}
}
return false;
}
});