安卓的事件处理机制
来源:互联网 发布:网络直播吃饭 编辑:程序博客网 时间:2024/05/16 04:50
1、基于监听的事件处理--委托式
主要做法:为组件绑定特定的事件监听器。
Event Source(事件源)
Event(事件)
Event Listener(事件监听器)
事件监听器:
1)内部类
2)匿名内部类
3)外部类
4)Activity本身
5)绑定到标签
2、基于回调的事件处理--自主式
主要做法:重写组件特定的回调方法,或Activity的回调方法。
回调机制就是当用户在GUI组件上激发某个事件时,组件自己特定的方法将会负责处理该事件。
Java是一种静态语言,我们无法为某个对象动态地添加方法,因此只能继承GUI组件类,并重写该类的
事件处理方法来实现。自定义View,重写事件处理方法。
事件传播:如果回调方法返回true,表明完成处理,不会继续传播。
传播顺序:绑定的事件监听器---回调方法---组件所在Activity。
3、响应系统设置的事件
应用随系统改变+系统随应用改变
Configuration类用于描述手机设备上的配置信息,包括用户特定的配置项,也包括系统的动态设备配置。
4、Handler消息传递机制
UI操作并不是线程安全的,即多个线程冰法操作UI组件,可能导致线程安全问题。为防止上述问题,Android规定:
只允许UI线程修改Activity里的UI组件。
通过Handler消息传递机制实现新线程操作UI组件。
(新线程发Msg,UI线程收Msg并操作UI组件)
UI线程适时处理Msg:重写Handler类中处理消息的方法,新线程发送Msg到与Handler相关的MsgQueue,而Handler
会不断从中获取消息并处理--回调。
5、异步任务(AsyncTask)
新线程不能更新UI组件的问题。与Handler类似的功能。适用于简单的异步处理,不需要借助线程与Handler。
AsyncTask<P,P,R>是一个抽象类,它定义了三个泛型类型:
Params:启动任务执行的输入参数的类型
Progress:后台任务完成的进度值的类型
Result:后台执行任务完成后返回结果的类型
步骤:创建子类;实现方法;调用子类实例的execute方法开始耗时任务。
0 0
- 安卓的事件处理机制
- 安卓事件处理机制
- 安卓触摸事件处理机制的简单介绍
- 安卓按键事件分发处理机制
- 安卓的事件处理
- 安卓事件处理机制之回调机制
- 安卓的事件分发机制
- 安卓Touch事件的分发机制
- 安卓开发3—事件处理机制
- 安卓孵化之路(二)——基于监听的事件处理机制
- 安卓事件处理
- 安卓事件处理
- 安卓应用的事件处理
- 安卓的双击事件处理
- 小菜学习安卓---安卓事件处理之回调机制
- 安卓事件分发机制
- 安卓事件分发机制
- 安卓事件分发机制
- csc和acsc--余割和反余割函数
- 集合判断不用size判断用isEmtpy判断
- 数据库学习第一篇
- Swift 分支语句
- 中国电信cxb被调查
- 安卓的事件处理机制
- csch和acsch--双曲余割和反双曲余割函数
- 公共类CommonUtil中不应该有公开的构造函数
- atan2--四象限的反正切函数
- 《Android源码设计模式解析与实战》读书笔记(十二)
- struts文件上传demo
- 每日一vim(7)自动补齐CTRL+N/CTRL+P
- abs--数值的绝对值和复数的模值
- 12.27总结