getRawX和getX的区别

来源:互联网 发布:千牛和淘宝助理的区别 编辑:程序博客网 时间:2024/06/09 07:20

简单明了。getRawX是以屏幕左上角为原点(0,0)手触摸到按钮的位置为终点的坐标。getRawY同理。getX是以控件本身的左上角为原点(0,0)手触摸的位置为终点的坐标。

public class MainActivity extends AppCompatActivity implements View.OnTouchListener {    Button btn = null;    int x=0;    int y=0;    int rawx=0;    int rawy=0;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        btn=(Button)findViewById(R.id.button);        btn.setOnTouchListener(this);    }    public boolean onTouch(View view, MotionEvent event) {        int eventaction = event.getAction();        switch (eventaction) {            case MotionEvent.ACTION_DOWN:                break;            case MotionEvent.ACTION_MOVE:                x=(int)event.getX();                y=(int)event.getY();                rawx=(int)event.getRawX();                rawy=(int)event.getRawY();                Log.d("-----------","getX="+x+"    getY="+y+"       "+"getRawX="+rawx+"   getRawY="+rawy);                break;            case MotionEvent.ACTION_UP:                break;        }        return false;    }}

0 0
原创粉丝点击