事件分發機制簡單理解

2021-07-24 07:38:24 字數 623 閱讀 7502

viewgroup

view

//分發事件

//分發事件

dispatchtouchevent

dispatchtouchevent

//攔截事件

\onintercepttouchevent

\//處理事件

//處理事件

ontouchevent

ontouchevent

viewgroup:

事件開始》dispatchtouchevent問自己是否需要攔截此事件?

true:攔截事件,直接交給自己的ontouchevent方法去處理事件,事件終止

false:不攔截,交給子控制項去處理.

view:

傳遞到view控制項:view下沒有子控制項

true:當前view處理該事件,事件終止

false:不處理當前事件,向上回傳(傳到上層的ontouchevent)

如果最高層的ontouchevent收到了子控制項回傳的事件,返回true則處理該事件,返回false,則不處理事件,事件丟失

Android事件分發機制簡單理解

鑑 於之前專案出現過事件衝突的情況,主要是頭部橫向的banner和縱向的滾動的內容區域滑動時候衝突。頁面的三大主要控制項就最外部的scrollview,內容區域的listview,以及橫向滾動的viewpager,這三個控制項都是自定義重寫實現的,每個控制項裡面也實現了很多的邏輯。剛開始看暈了。後來...

事件分發機制

android中的事件型別分為按鍵事件和螢幕觸控事件,touch事件是螢幕觸控事件的基礎事件,有必要對它進行深入的了解。乙個最簡單的螢幕觸控動作觸發了一系列touch事件 action down action move action move action move.action move acti...

事件分發機制

對於安卓事件傳遞和消費機制,他給我們提供了3個方法,dispatchtouchevent onintercepttouchevent 和ontouchevent 當監聽到事件時,首先由activity捕獲 開始進入事件分發流程.dispatchtouchevent 如果返回的是true,表明事件不會...