转载请表明出处:http://blog.csdn.net/u012637501(嵌入式_小J的天空)
一、Android的事件处理
Android事件处理包括两个部分:Android事件处理机制(基本)和Android消息传递机制(进阶)。前者包含三种处理方式,即基于监听的事件处理、基于回调的事件处理、直接绑定到标签;后者包含两种处理方式,即Handler消息传递、异步任务处理。
1.Android的事件处理机制
(1)基于监听的事件处理方式
通常做法是为Android界面组件绑定特定的事件监听器,在事件监听器的方法里编写事件处理代码。
(2)基于回调的事件处理方式
通常做法是重写Android组件的特定的回调方法,Android为绝大部分界面组件都提供了事件相应的回调方法,我们只需重写它们即可。当我们触发相应组件时,由系统根据具体情景自动调用组件的方法。
(3)直接绑定到标签
即我们在界面布局文件中为指定组件标签设置事件属性,属性值是一个方法的方法名,然后再在Activity中定义该方法,编写具体的事件处理代码,当我们触发绑定android:OnClick标签的组件时,作出相应的响应。
2.Android消息传递机制
(1)Handler消息传递
(2)异步任务处理。
二、基于监听的事件处理
1.事件处理模型
基于监听的事件处理模型,主要涉及三类对象:
(1)EventSource(事件源)
产生事件的组件,即事件发生的场所,如按钮、菜单等;
(2)Event(事件)
具体某一操作的详细描述,事件封装了操作的相关信息,如果想获得事件源上所发生事件的相关信息,可通过Event对象来取得,例如按键事件按下的是哪个键、触摸事件发生的位置等;
(3)EventListener(事件监听器)
负责监听用户在事件源上的操作(如单击),并对用户的各种操作做出相应的相应,事件监听器中可包含多个事件处理器,一个事件处理器实际上就是一个事件处理方法。