Android组件的事件处理有2种方式:

1、基于监听器的事件处理方式:先定义组件,然后为组件设定监听器。

详见http://blog.csdn.net/jediael_lu/article/details/11555497

2、基于回调的事件处理方式:让每一个组件继承UI类,并重写该类的事件处理方法。当该组件遇到某事件时,即会触发相应的事件处理方法。

如:

public class MyButton extends Button{public boolean onKeyDown(int keyCode, KeyEvent event){//code here}public boolean onTouch(MotionEvent event){//code here}
}

疯狂android讲义:

对于Android 基于盹昕的事件处理而言, 主要做法就是为Android 界面组件拥定特定的事件监昕器, 上一章我们己经见到大量这种事件处理的示例.
对于Android 基于回调的事件处理而吉, 主要做法就是重写Android 组件特定的回调方法,或者重写Activity的回调方法. Android 为绝大部分界面组件都提供了事件响应的回调方法,开发者只要重写它们即可.
一般来说,基于回调的事件处理可用于处理一些具有通用性的事件,基于回调的事件处理代码显得比较简洁.但由于某些特定的事件, 无法使用基于回调的事件处理,只能使用基于监听的事件处理.

事件处理之一:两种方式:监听器与回调相关推荐

  1. cocos2dx中精灵点击事件处理的两种方式——Sprite和ImageView

    1. ImageView 的方式:封装的Widget组件ImageVIew实现了类似按钮的监听事件,所以处理起来很方便直接 ImageView* _pPokerImageView;_pPokerIma ...

  2. 启动Activity的两种方式startActivity和startActivityForResult(一)

    启动Activity有两种方式: 1,startActivity(Intent intent);启动其他Activity 2,startActivityForResult(Intent intent, ...

  3. RocketMq : 消费消息的两种方式 pull 和 push

    文章目录 1.概述 两种方式的优缺点对比: push pull 1.概述 原创在:https://blog.csdn.net/zhangcongyi420/article/details/905483 ...

  4. Qt开发应用程序的两种方式

    目录 案例:计算圆面积(两种方式实现) 方式一:设计器 Qt Designer实现   (20201015) 方案A:触发按钮事件(_clicked()) 方案B:触发输入编辑框事件(_textCha ...

  5. com.android.sadk卸载不掉,Android的Service的两种方式以及使用

    Service根据使用方式有两种:startService.bindService. 区别: ①启动方式:前者startService.后者bindService: ②和Activity联系:前者Ac ...

  6. Spring Security 玩出花!两种方式 DIY 登录

    Spring Security 玩出花!两种方式 DIY 登录 一般情况下,我们在使用 Spring Security 的时候,用的是 Spring Security 自带的登录方案,配置一下登录接口 ...

  7. java的websocket_java 实现websocket的两种方式实例详解

    一.介绍 1.两种方式,一种使用tomcat的websocket实现,一种使用spring的websocket 2.tomcat的方式需要tomcat 7.x,JEE7的支持. 3.spring与we ...

  8. linux的进程与库之间的通信两种方式

    文章目录 前言 一.进程A与算法库b的通信方式之一:动态dlopen加载算法库b,编译的时候是需要加载该头文件就可以,无需连接该算法库b 具体的实施细节: 二.进程A与算法库b的通信方式之二:进程A编 ...

  9. [js] axios为什么可以使用对象和函数两种方式调用?是如何实现的?

    [js] axios为什么可以使用对象和函数两种方式调用?是如何实现的? axios 源码 初始化 看源码第一步,先看package.json.一般都会申明 main 主入口文件. // packag ...

最新文章

  1. Andros系列排爆机器人原理_中国製造2025系列M之二:高档数控机床和机器人
  2. JS中用encodeURIComponent编码,后台JAVA怎么解码
  3. 如何将网站前端如何添加登录密码访问_如何在Mac上查找保存的密码的所有信息...
  4. python书籍_最好的Python书籍,让您像专业程序员一样编程
  5. 提问的智慧 - How To Ask Questions The Smart Way
  6. SAS安装、更新及问题解决方法
  7. Android webview与js交互
  8. 研发工具之谷歌浏览器无法加载flash的问题
  9. C语言short精解
  10. AutoIT:界面与自动化操作结合来简化日常劳动: .Net Reactor验证License,设置License,创建License,截图AutoIt自动化实现。(七)...
  11. html网页早发白帝城,早发白帝城古诗
  12. 微信企业号开发-如何建立连接
  13. MIUI ROM 定制教程
  14. 【C语言】验证哥德巴赫猜想:任何一个大于2的偶数均可表示成为两个素数之和。
  15. 细数乌镇互联网大会世界领先成果:中国科技崛起
  16. go work 工作区
  17. vue全家桶学习笔记
  18. C语言中,定义一个布尔型变量如何用,为什么我用bool定义会报错?
  19. 第一学期对于液质、气相处理过程的总结
  20. 和软件MVP相比,打造硬件产品的MVP真的更难吗?

热门文章

  1. 编译原理陈意云3-20 (a) 证明下面文法 S→AaAb|BbBa A→ε B→ε 是LL(1)文法,但不是SLR(1)文法。
  2. [leetcode]26.删除有序数组中的重复项
  3. java面试题(转载其他人,方便日常看)
  4. 静态ip和动态ip的区别_动态IP和静态IP有哪些区别?
  5. python笔记之序列(tuple的基本使用和常用操作)
  6. git status 不能显示中文
  7. 更改android模拟器sdcard文件夹的权限
  8. java自定义findbugs规则_静态代码扫描 (三)——FindBugs 自定义规则入门
  9. python怎样打开加密的文件_python基础教程如何用Python 加密文件
  10. 搜狗浏览器智慧版_奥维互动地图浏览器下载_奥维互动地图浏览器64位版v7.1.2