Android 處理事件的兩種方式對比



一、Android提供了兩套強大的事件處理機制

1、基於監聽的事件處理;

2、基於回調的事件處理;
二、表格進行相關地方進行對比

對比領域 基於事件監聽 基於回調的事件處理
1、處理方式 為Android界面組件綁定特定的事件監聽器 重寫Android特定組件的回調方法,或重寫Activity的回調方法
2、處理的內容 多數都可完成 處理通用性事件,代碼簡潔
3、是否可傳播 不可以傳播 可以傳播,但是需要將回調方法返回值設為true
4、使用思路 實現監聽器處理類,就是實現特定接口的java 自定義組件,重寫自定義組件中父類組件對特定事件的回調處理方法
類的實例
5、使用步驟 (1)獲取普通組件(事件源) (1)自定義一個View等組件,該組件繼承該組件類別的父類
(2)實現事件監聽器類,該監聽器類是一個 (2)重寫該組件中的目標事件回調方法
特殊的java類,必實現一個XxxListener接口
(3)調用事件源的setXxxListener方法將事件
監聽器對象注冊給普通組件
6、關鍵點 實現事件監聽器類 重寫父類的事件處理方法
7、處理特點 委派式的處理方式(事件源與事件監聽器是分離 獨立式處理(事件源與事件監聽器統一)
的,利於提高程序的可維護性)
普通組件將事件處理委托給特定的事件監聽器
8、常用特征性內容 事件源 事件 監聽器 注冊事件 重寫監聽器類 回調、 事件、自定義組件、事件傳播
實現接口,內部類形式、外部類形式、匿名內部
類形式、綁定到標簽(onClick())
9、事件源的條件 普通組件 自定義組件
10、優勢 可維護性強、適用性廣 可傳播:某組件上所發生的事件不僅會激發該組件上的回調方法,也
會觸發該組件所在的activity等組件——只要事件能處理到該Acitivity
11、備注 建議對於一次性事件使用匿名內部類的形式 如果使用xml布局文件形式,需要加上類名


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com