Java事件模型与Android事件模型的比较
2010-07-01 14:49:00 来源:WEB开发网核心提示://注册事件监听器,b1就是被激活事件的组件这样一来,Java事件模型与Android事件模型的比较(4),当事件被激活时,处理流程如下(根据图3.1对照来看):由于已经通过 addActionListener进行了事件监听器的注册,View是重要的??,它是陪使用者互?的前?;在Android框架的韵?中,所以,就会
//注册事件监听器,b1就是被激活事件的组件这样一来,当事件被激活时,处理流程如下(根据图3.1对照来看):由于已经通过
addActionListener进行了事件监听器的注册,所以,就会调用到特定的事件处理方法,即actionPerformed()函数。这样,执行的结果就要看actionPerformed是具体做什么工作了。
完整的例子(来源于think in java 13.16.1节): //: Button2New.java// Capturing button
pressesimport java.awt.*;import java.awt.event.*; // Must add thisimport
java.applet.*; public class Button2New extends Applet { Button b1 = new
Button("Button 1"), b2 = new Button("Button 2"); public void init() {
b1.addActionListener(new B1()); b2.addActionListener(new B2()); add(b1);
add(b2); } class B1 implements ActionListener { public void
actionPerformed(ActionEvent e) { getAppletContext().showStatus("Button 1"); } }
class B2 implements ActionListener { public void actionPerformed(ActionEvent e)
{ getAppletContext().showStatus("Button 2"); } }}
这是最常用的一种方式:定义一个内部类,来实现ActionListener监听器。而在外部类中,定义一个这样的对象,去注册监听器,通过调用
addActionListener方法,需要注意的是,这个内部类对象是作为addActionListener的参数,在本类中,是直接作为匿名对象被创建的。这里,也可以不用匿名对象,而直接new
一个对象,然后,这个对象作为参数传给addActionListener。考虑:不用匿名对象与用匿名对象的区别? 更多的例子,请参考《think in java
13.16》,推荐编码方法见《think in java 13.16.7推荐编码方法》
Android事件模型(从UI角度来说):从网上摘抄了一些相关文章(共5篇),从这几篇文章来看,Android事件模型与java2的事件模型处理方式一样,对事件的处理,都是采用事件监听器的方式来实现的。
文章1:
Jollen 的 Android 教?,#15: 什?是事件毕?器(Event Listener)?
???生基本的UI後,接著就要??UI的事件?理(UI Events),才能?UI陪使用者「互?」。
什?是事件毕?器(Event Listener)
UI的使用者事件?理,即View如何?理使用者的操作,是一?重要的疹铨。View是重要的??,它是陪使用者互?的前?;在Android框架的韵?中,以事件毕?器(event listener)的方式??理UI的使用者事件。
[]
更多精彩
赞助商链接