第三章 Android事件处理

   🌈个人主页:小新_-

🎈个人座右铭:“成功者不是从不失败的人,而是从不放弃的人!”🎈

🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝

🏆所属专栏: Android移动开发欢迎订阅,持续更新中~~~

  ​                    

                                 ✨让小新带着你快乐的学习吧~✨

1、事件监听的处理模型

在事件监听的处理模型中,主要涉及三类对象:

  1. Event Source(事件源):一般指各个组件。
  2. Event(事件):一般是指用户操作,该事件封装了界面组件上发生的各种特定事件。
  3. Event Listener(事件监听器):负责监听事件源所发生的事件,并对该事件做出响应。

实际上,事件响应的动作就是一组程序语句,通常以方法的形式组织起来。Android利用的是Java语言开发,其面向对象的本质没有改变,所以方法必须依附于类中才可以使用。而事件监听器的核心就是它所包含的方法,这些方法也被称为事件处理器(Event Handler)。

事件监听的处理模型可以这样描述:当用户在程序界面操作时,会激发一个相应的事件,该事件就会触犯事件源上注册事件监听器,事件监听器再调用对应的事件处理器做出相应的反应。Android的事件处理机制采用了一种委派式的事件处理方式:普通组件(事件源)将整个事件处理委派给特定的对象(事件监听器),当该组件发生指定的事件时,就通知所委托的事件监听器,由该事件监听器处理该事件。该流程如图所示。

这种委派式的处理方式很类似于人类社会的分工合作。举一个简单例子,当人们想邮寄一份快递(事件源)时,通常是将该快递交给快递点(事件监听器)来处理,再由快递点通知物流公司(事件处理器)运送快递,而快递点也会监听多个物流公司的快递,进而通知不同的物流公司。这种处理方式将事件源与事件监听器分离,从而提供更好的程序模型,有利于提高程序的可维护性。

基于上面程序可以总结出基于监听的事件处理模型的编程步骤:

(1)获取要被监听的组件(事件源)。

(2)实现事件监听器类,该类是一个特殊的Java类,必须实现一个XxxListener接口。

(3)调用事件源的setXxxListener方法将事件监听器对象注册给事件源。

当用户操作应用界面,触发事件源上指定的事件时,Android会触发事件监听器,然后由该事件监听器调用指定的方法(事件处理器)来处理事件。 实际上,对于上述三个步骤,最关键的步骤是实现事件监听器类。实现事件监听器其实就是实现了特定接口的Java类实例,在程序中实现事件监听器,通常有如下几种形式。

  • 内部类形式:将事件监听器类定义成当前类的内部类。
  • 外部类形式:将事件监听器类定义成一个外部类。 Activity本身作为事件监听器类:让Activity本身实现监听器接口,并实现事件处理方法。
  • 匿名内部类形式:使用匿名内部类创建事件监听器对象。   

2、监听点击事件的三种方式

(1)外部类设置OnClick

XML

JAVA

效果

(2)内部类

XML

JAVA

效果

(3)实现接口

XML

JAVA

效果

3、Radio Button的监听事件

4、CheckBox的监听事件

 

最后,感谢大家的观看~~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值