XML中布局时,我们自定义的View的触摸原点在哪??这又是一个问题啊,学习的过程就是不断发现问题,解决问题的过程。呵呵,相信大家都是深有体会吧,这次我们研究View的触摸原点问题。

下面是核心代码:

 

    /**

     * 定义手势识别

     * */

    GestureDetector mGestureDetector;

 

    /**

     * 注册手势识别,当然这个要在构造里初始化一下

     * */

    public void myEvent(){

       mGestureDetector = new GestureDetector(

              new GestureDetector.SimpleOnGestureListener(){

                  public boolean onSingleTapUp(MotionEvent e){

                     Log.v("onTouchEvent"," e.getX():" + e.getX()+ "   e.getY():" + e.getY());

                     return true;

                  }

              });

    }

 

 

    /**

     * 响应触摸屏

     * */

    public boolean onTouchEvent(MotionEvent event) {

       mGestureDetector.onTouchEvent(event);

       return true;

    }

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

运行一下:

                     

下面是点击的示意图:

                 

 

点击后查看log 

 

通过观察发现,这个和我们定义的View的大小相符,呵呵,结果不言而喻啊,哈哈。