Android的事件处理
第3章
Android事件处理概述
为用户动作提供响应的机制就是事件处理
Andorid有两套事件处理机制
基于监听的事件处理
基于回调的事件处理
基于监听的事件处理编程步骤
1. 获取组件
2. 实现监听器类(实现XxxListener接口)
3. 调用组件的setXxxListener方法将事件监听器对
象注册给组件
监听器类的4种实现方
法:内部类,外部类,
匿名内部类,Activity
本身作为监听器
基于回调的事件处理
不需要事件监听器,由组件自己特定的方
法负责处理事件。
实现方式:
继承GUI组件类,并重写该类的事件处理方法
View类有如下方法
onKeyDown
onKeyLongPress
onKeyShortcut
onKeyUp
onTouchEvent
用户继承View类或子
类后,可根据需要重
写这些方法
基于回调的事件处理
例:P205
要求创建一个自定义按钮,并在其
中对按钮的点击事件作回调处理
注意点
1.新建按钮子类
继承Button
2.重写onTouchEvent
3.如果重写onKeyDown
需要修改模拟器配置
文件 dPad=yes
基于回调的事件传播
几乎所有基于回调的事件处理都有一个
boolean类型的返回值
如果返回true,表明处理完,不会向外传播
如果返回false,表明未处理完,会传播
传播:某组件上的事件,不仅激发该组
件上的回调方法,也会触发组件所在
Activity的回调方法。
例:将上例中MyButton的点击事件传播
到Activity中去。