2011-05-09 23 views
9

我向RelativeLayout註冊了一個偵聽器,請參見下文。我想添加一些自定義事件處理,但是,除非返回true,否則我不能獲得任何MOVE/UP事件。Android:無法在RelativeLayout的onTouchEvent中看到ACTION_MOVE/UP

另一個嘗試,我註冊了一個CheckBox的同一個監聽器,一切都很順利。
ViewGroup和Widget之間有區別嗎?設計目的?

回答

24

「但是,除非返回true,否則我無法獲得任何MOVE/UP事件。」

您已回答了您自己的問題。如果您沒有返回true表示您關心並正在處理該事件,系統將不會向您發送後續事件,因爲您已告知系統您不關心此事件。如果您需要監控觸摸事件的整個生命週期,則需要始終返回true

+3

好吧,我記得SDK說過:「如果聽衆已經消費了事件,否則爲真」,所以我認爲「消費」與「關心」不同。 – fifth 2011-05-09 07:15:33