基于监听的事件处理是一种面向“对象”的事件处理方式。
主要涉及三类对象
EventSource(事件源)
事件发生的场所,通常就是各个组件,如按钮等...Event(事件)
封装了特定操作的对象,如用户点击等...EventListener(事件监听器)
负责监听事件源所发生的事件,并作出相应的响应
调用流程如下:
安卓中的事件的处理机制使用了一种委派式事件的处理的方式:普通组件(事件源),将整个事件处理的委托给其他对象(事件监听器),当事件源发生时,通知监听器来处理。
这种机制明显“抄袭”的人类的社会分工。例如单位发生火灾(事件源),单位通常不会自己处理,而是通知消防局(事件监听器)来处理。
这种委派式处理方式明显好处很多,它将事件源和监听器分离,从而提高更好的程序模型,有利于程序的可维护性。