Android Touch(4)MotionEvent(*)

1,MotionEvent的复制或构造

  有时候可能要保存一个MotionEvent, 它的构造方法是匿名的,不能直接创建,对外提供的获取对象的接口是静态的obtain方法,可以从一个MotionEvent对象获取,也可以从一些变量获取。

1   @Override
2     public boolean onTouchEvent(MotionEvent event) {
3         MotionEvent evcopy = MotionEvent.obtain(event);
4         //...5     }

2,MotionEvent.recycle()

  可以将当前的对象回收,下次要用的时候就不用重新再new一个新的对象了,直接从它的回收池里面拿就行。

3,MotionEvent可以在第一个down事件中知道方向?

 1     @Override
 2     public boolean onTouchEvent(MotionEvent event) {
 3         if (event.getAction() == MotionEvent.ACTION_DOWN) {
 4             float origin = event.getOrientation();
 5             System.out.println("origin = " + origin);
 6             if (origin < 0) {
 7                 System.out.println("");
 8             }else{
 9                 System.out.println("");
10             }
11         }
12         //...13     }

 

posted @ 2016-03-05 23:26  f9q  阅读(217)  评论(0编辑  收藏  举报