Android的事件处理一

一、Android事件处理的概述:
(一)、概念:
在Android中,我们可以通过事件处理使UI与用户互动(UI Events)。具体形式则是以事件监听器(event listener)的方式來“监听”用户的动作。
Android提供了非常良好的UI事件处理机制。View是绘制UI的类,每个View对象都可以向Android注册一个事件监听器。每个事件监听器都包含一个回调方法(callback method),这个回调方法(callback method)主要的工作就是回应或处理用户的操作。
(二)、Android  UI事件处理的两套机制:
1、 基于监听和回调的事件处理机制(event listener):
就是为Android中的控件绑定特定的事件监听器。一旦该控件监听到有相应的动作发生,则该动作会触发事件监听器,而该监听器会调用内部的 回调方法做出相应的响应。事件监听器的核心就是它内部包含的回调方法。
2、另外一种UI事件的机制为 事件处理器(event handler):event handler与event listener是不一样的处理机制。后续课程中会讲到多线程的 Handler、Looper消息传递机制。
(三)、Android种常用的 事件监听器及其回调方法(callback method):
  1. View.OnClickListener   :  onClick()         单击事件
  2. View.OnLongClickListener    :     onLongClick()     长按事件
  3. View.OnFocusChangeListener     :          onFocusChange()     焦点改变事件
  4. View.OnKeyListener          :          onKey()      按键监听事件
  5. View.OnTouchListener          :           onTouch()     触摸屏事件
  6. View.OnCreateContextMenuListener          :           onCreateContextMenu()     创建上下文菜单事件
【备注:】基本的事件监听类:
  1. RadioGroup.OnCheckedChangeListener             单选按钮组的勾选项改变监听器
  2. CompoundButton.OnCheckedChangeListener     多选框勾选项改变监听器
  3. AdapterView.OnItemSelectedListener                  下拉列表框条目被选中监听器
  4. AdapterView.OnItemClickListener                         ListView的条目单击监听器
  5. AdapterView.OnItemClickListener                         GridView的条目单击监听器
  6. DatePicker.OnDateChangedListener                     DatePicker的日期改变监听器
  7. TimePicker.OnTimeChangedListener
  8. AbsListView.OnScrollListener                               ListView的滑动监听器
  9. ViewPager.OnPageChangeListener
  10. TabHost.OnTabChangeListener
  11. SearchView.OnQueryTextListener
  12. SeekBar.OnSeekBarChangeListener
  13. RatingBar.OnRatingBarChangeListener
  14. ActionBar.OnNavigationListener
  15. ActionBar.TabListener
【备注:】其实事件监听器,就是实现了一个特定接口的Java类的实例。
实现事件监听器有几种形式:
1、内部类形式;

2、外部类形式;

3、Activity实现监听器接口,自身作为事件监听器类;
4、 匿名内部类的形式创建事件监听器,并实现监听器内的方法。(Android开发中 常用匿名内部类作为监听器)
Android的事件处理一

一、Android事件处理的概述:

(一)、概念:
在Android中,我们可以通过事件处理使UI与用户互动(UI Events)。具体形式则是以事件监听器(event listener)的方式來“监听”用户的动作。
Android提供了非常良好的UI事件处理机制。View是绘制UI的类,每个View对象都可以向Android注册一个事件监听器。每个事件监听器都包含一个回调方法(callback method),这个回调方法(callback method)主要的工作就是回应或处理用户的操作。

(二)、Android  UI事件处理的两套机制:
1、 基于监听和回调的事件处理机制(event listener):
就是为Android中的控件绑定特定的事件监听器。一旦该控件监听到有相应的动作发生,则该动作会触发事件监听器,而该监听器会调用内部的 回调方法做出相应的响应。事件监听器的核心就是它内部包含的回调方法。
2、另外一种UI事件的机制为 事件处理器(event handler):event handler与event listener是不一样的处理机制。后续课程中会讲到多线程的 Handler、Looper消息传递机制。
(三)、Android种常用的 事件监听器及其回调方法(callback method):
  1. View.OnClickListener   :  onClick()         单击事件
  2. View.OnLongClickListener    :     onLongClick()     长按事件
  3. View.OnFocusChangeListener     :          onFocusChange()     焦点改变事件
  4. View.OnKeyListener          :          onKey()      按键监听事件
  5. View.OnTouchListener          :           onTouch()     触摸屏事件
  6. View.OnCreateContextMenuListener          :           onCreateContextMenu()     创建上下文菜单事件
【备注:】请同学们在这里增添新学到的事件监听类:

  1. RadioGroup.OnCheckedChangeListener             单选按钮组的勾选项改变监听器
  2. CompoundButton.OnCheckedChangeListener     多选框勾选项改变监听器
  3. AdapterView.OnItemSelectedListener                  下拉列表框条目被选中监听器
  4. AdapterView.OnItemClickListener                         ListView的条目单击监听器
  5. AdapterView.OnItemClickListener                         GridView的条目单击监听器
  6. DatePicker.OnDateChangedListener                     DatePicker的日期改变监听器
  7. TimePicker.OnTimeChangedListener
  8. AbsListView.OnScrollListener                               ListView的滑动监听器
  9. ViewPager.OnPageChangeListener
  10. TabHost.OnTabChangeListener
  11. SearchView.OnQueryTextListener
  12. SeekBar.OnSeekBarChangeListener
  13. RatingBar.OnRatingBarChangeListener
  14. ActionBar.OnNavigationListener
  15. ActionBar.TabListener
【备注:】其实事件监听器,就是实现了一个特定接口的Java类的实例。
实现事件监听器有几种形式:
1、内部类形式;

2、外部类形式;

3、Activity实现监听器接口,自身作为事件监听器类;
4、 匿名内部类的形式创建事件监听器,并实现监听器内的方法。(Android开发中 常用匿名内部类作为监听器)

良心的公众号,更多精品文章,不要忘记关注哈

《Android和Java技术栈》

Android03_事件处理一相关推荐

  1. java事件处理模型_从零开始理解JAVA事件处理机制(3)

    我们连续写了两小节的教师-学生的例子,必然觉得无聊死了,这样的例子我们就是玩上100遍,还是不知道该怎么写真实的代码.那从本节开始,我们开始往真实代码上面去靠拢. 事件最容易理解的例子是鼠标事件:我们 ...

  2. Python Qt GUI设计:QTimer计时器类、QThread多线程类和事件处理类(基础篇—8)

    目录 1.QTimer计时器类 2.QThread多线程类 3.事件处理类 一般情况下,应用程序都是单线程运行的,但是对于GUI程序来说,单线程有时候满足不了需求.例如,如果需要执行一个特别耗时的操作 ...

  3. delphi自定义事件处理

    http://www.cnblogs.com/ywangzi/archive/2012/09/06/2673414.html delphi自定义事件处理 为什么我们点击按钮,就会执行按钮的onclic ...

  4. DataGrid鼠标事件处理

    http://blog.csdn.net/bgu/ 完成功能是DataGrid的页面选中事件.鼠标事件.双击事件改变TR的色彩.代码很简单,只是一点JS操作. JS文件:GridControl.js ...

  5. Qt 事件处理和事件过滤器的返回值总结

    事件处理: 1.返回 true:告诉Qt已经处理的这个事件 2.返回 false:Qt会把这个事件传递给它的父窗口部件来处理 3.返回 基类的event(QEvent*):Qt把这个事件交个它的基类来 ...

  6. Nagios之事件处理

    目标:实现在监控3306端口服务时,出现1次critical软状态时或者在上一次执行后没有成功后出现的第一次硬状态critical情况下,远程执行mysql重启服务,并且每次执行远程重启服务前把报告事 ...

  7. iOS事件处理,看我就够了~

    该文章属于<简书 - 刘小壮>原创,转载请注明: <简书 - 刘小壮> https://www.jianshu.com/p/b0884faae603 好久没写博客了,前后算起来 ...

  8. 【原】iOS学习之事件处理的原理

    在iOS学习23之事件处理中,小编详细的介绍了事件处理,在这里小编叙述一下它的相关原理 1.UITouch对象 在触摸事件的处理方法中都会有一个存放着UITouch对象的集合,这个参数有什么用呢? ( ...

  9. jQuery学习---------认识事件处理

    3种事件模型: 原始事件模型 DOM事件模型 IE事件模型 原始事件模型(0级事件模型) 1.事件处理程序被定义为函数实例,然后绑定到DOM元素事件对象上,实现事件的注册. 例子:var btn = ...

最新文章

  1. python基础-第九篇-9.3线程池
  2. 构建布局良好的windows程序
  3. elementui表格复制_Element-UI中关于table表格的那些骚操作
  4. OpenGL blending sort 混合排序(前后)的实例
  5. 【java】StringBuilder的常用两种方法与练习
  6. 搜索二维矩阵 II—leetcode240
  7. 剩余 大小 查看内存_谈谈内存压缩那些事
  8. Swagger+Spring mvc生成Restful接口文档
  9. 计算机常用英文句子,英文简历常用句子
  10. Linux 使用sigaction查询或设置信号处理方式
  11. 巴菲特午宴中标者孙宇晨与王小川隔空互怼 还要对赌100个比特币?
  12. Hadoop平台简述
  13. 群晖系统,部署JAVA-JAR包,SpringBoot项目,手工启动
  14. 在读服务器端的备份说明文件错误,3dmax保存文件时出错,提示“无法创建备份文件”的原因和解决方法...
  15. C语言_4 循环结构;一些例题
  16. 电动滑板车和电动自行车最新标准CE-EN17128和EN15194区别
  17. Qt程序退出QThread: Destroyed while thread is still running问题
  18. 裸看美剧必备英文词汇文章索引
  19. keypair java_Java KeyPairGenerator generateKeyPair()用法及代码示例
  20. UPRtek光谱仪维修LED光谱计维修MK350N

热门文章

  1. 如何关闭 YouTube 上的受限模式
  2. 前端Vue之发布订阅模式
  3. 认知神经科学系列|(2)细胞机制与认知
  4. OpenCV截取图像的任意形状区域,规则的图形(圆、椭圆、矩形),不规则鼠标自己选择
  5. 计算机科学学院毕业晚会主题,计算机科学与技术学院举办2020届毕业生晚会
  6. STM8S EEPROM 操作
  7. 闲来无事,写一款扎金花小游戏,先练练手,打的时候好赢钱
  8. 如何开发一个简单的智能对话查询工具
  9. web页面之搜索、高级搜索功能
  10. 来看看你是不是真的了解 RSA 加密算法,查漏补缺!