android基于监听的处理模型

2016-03-23 / 6 阅读 / Android

基于监听的事件处理是一种面向“对象”的事件处理方式。
主要涉及三类对象

  • EventSource(事件源)
    事件发生的场所,通常就是各个组件,如按钮等...

  • Event(事件)
    封装了特定操作的对象,如用户点击等...

  • EventListener(事件监听器)
    负责监听事件源所发生的事件,并作出相应的响应

调用流程如下:

graph TD
1=>start: 开始
10=>operation: 事件源
20=>operation: 生成事件
30=>operation: 事件监听器
35=>operation: 处理器
40=>end: 结束

1->10->20->30->35->40

安卓中的事件的处理机制使用了一种委派式事件的处理的方式:普通组件(事件源),将整个事件处理的委托给其他对象(事件监听器),当事件源发生时,通知监听器来处理。
这种机制明显“抄袭”的人类的社会分工。例如单位发生火灾(事件源),单位通常不会自己处理,而是通知消防局(事件监听器)来处理。
这种委派式处理方式明显好处很多,它将事件源和监听器分离,从而提高更好的程序模型,有利于程序的可维护性。

相关推荐