android中的touch事件 – Android移動開發技術文章_手機開發 Android移動開發教學課程

一、onTouch :是View中onTouchListener接口中的方法。
    onTouchEvent :在view類中定義 並且所有子類都重寫瞭該方法,處理傳遞到view的手勢事件。
 
二 、一個最簡單的屏幕觸摸動作觸發瞭一系列Touch事件:ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->ACTION_MOVE…->ACTION_MOVE->ACTION_UP
 
三、android系統中的每個View的子類都具有下面三個和TouchEvent處理密切相關的方法:
1)public boolean dispatchTouchEvent(MotionEvent ev)  這個方法用來分發TouchEvent
2)public boolean onInterceptTouchEvent(MotionEvent ev) 這個方法用來攔截TouchEvent
3)public boolean onTouchEvent(MotionEvent ev) 這個方法用來處理TouchEvent
 
當TouchEvent發生時 TouchEvent 處理最頂層的view 的 dispatchTouchEvent
          dispatchTouchEvent 如果為true,交給這個view的onTouchEvent處理
                                           如果為false,交給這個view的interceptTouchEvent 方法來決定是否攔截這個事件
                        interceptTouchEvent 返回 true,也就是攔截掉瞭,則交給它的onTouchEvent來處理
                                                         返回 false,那麼就傳遞給子view,由子view的dispatchTouchEvent 再開始這個事件的分發。
        如果事件傳遞到某一層的子 view 的 onTouchEvent 上瞭,這個方法返回瞭 false ,那麼這個事件會從這個 view 往上傳遞,都是 onTouchEvent 來接收。而如果傳遞到最上面的 onTouchEvent 也返回 false 的話,這個事件就會“消失”,而且接收不到下一次事件。

作者“twy”
 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。