关于JAVA回调函数和Android事件响应
2011-07-04 22:22
288 查看
【来自我的个人博客mengxin.tk】
Android开发中有一段常用的代码,就是为控件添加事件响应,我想开发过的人都应该熟记于心了。下面就一段案例代码:mtxtPeri =(TextView)findViewById(R.id.textPeri); OnClickListener listener1 = new OnClickListener() { //@Override public void onClick(View v) { // TODO Auto-generated method stub mtxtPeri.setText("触发事件"); } };this.mtxtPeri.setOnClickListener(listener1); 这段代码的功能很简单,就是为一个TextView控件添加一个单击的消息响应。其中OnClickListener是一个接口,在Activity类的OnCreate()函数中,声明并实现了这个接口,最后将这个接口绑定到控件上面,一旦控件被单击,那么最后这个函数就会执行,进而接口的函数就会执行,也就是被实现的OnClick()就会被执行。 这里是使用了回调函数的原理,通过在网上查阅了一些资料,对于JAVA的回调函数,一些高手给出了一些,通过分析,和上面的代码惊人的相似。 Kelvin的异想空间 提到这样一个回调函数的例子http://kidult.iteye.com/blog/148982功能很简单,如果我们要测试一个类的方法的执行时间:下面是传统方法,不做介绍。?
他给出了一个回调函数的版本,代码是这样的。?
下面对这两段代码进行比较分析,我们可以发现相似的地方。为了对比,故在此截图~~
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/14/2607207c71661f1c8a915a9a45b5a76e.gif)
加粗的两段代码是等价的,唯一的不同之处是,左边那个在使用时又定义了一个类tool。而右边的就是用的接口函数中的那个对象。另外右边的最后一句是等到单击时才会响应。左边的那个运行就会执行。这个应该是一种通用的设计模式,后面再仔细研究,对于回调函数和Android的消息响应机制通过这个例子可以共同理解。
Android开发中有一段常用的代码,就是为控件添加事件响应,我想开发过的人都应该熟记于心了。下面就一段案例代码:mtxtPeri =(TextView)findViewById(R.id.textPeri); OnClickListener listener1 = new OnClickListener() { //@Override public void onClick(View v) { // TODO Auto-generated method stub mtxtPeri.setText("触发事件"); } };this.mtxtPeri.setOnClickListener(listener1); 这段代码的功能很简单,就是为一个TextView控件添加一个单击的消息响应。其中OnClickListener是一个接口,在Activity类的OnCreate()函数中,声明并实现了这个接口,最后将这个接口绑定到控件上面,一旦控件被单击,那么最后这个函数就会执行,进而接口的函数就会执行,也就是被实现的OnClick()就会被执行。 这里是使用了回调函数的原理,通过在网上查阅了一些资料,对于JAVA的回调函数,一些高手给出了一些,通过分析,和上面的代码惊人的相似。 Kelvin的异想空间 提到这样一个回调函数的例子http://kidult.iteye.com/blog/148982功能很简单,如果我们要测试一个类的方法的执行时间:下面是传统方法,不做介绍。?
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/14/2607207c71661f1c8a915a9a45b5a76e.gif)
加粗的两段代码是等价的,唯一的不同之处是,左边那个在使用时又定义了一个类tool。而右边的就是用的接口函数中的那个对象。另外右边的最后一句是等到单击时才会响应。左边的那个运行就会执行。这个应该是一种通用的设计模式,后面再仔细研究,对于回调函数和Android的消息响应机制通过这个例子可以共同理解。
相关文章推荐
- 关于JAVA回调函数和Android事件响应
- 关于Java窗口响应事件 windowsDeactivated
- Android 关于嵌套listView时onItemClick事件不响应的解决办法
- (4.4.14.1)Android_关于子控件和父控件的事件响应问题
- 浅析Java匿名内部类在Android事件响应中的应用
- Android 关于嵌套listView时onItemClick事件不响应的解决办法
- Android中关于EditText点击事件的响应问题记录
- android关于用.xml布局文件中对View添加OnClick事件无法响应的事情
- Android程序设计逻辑分析之用户事件响应-回调函数的使用
- Android 关于嵌套listView时onItemClick事件不响应的解决办法
- 关于java图形界面开发下拉框和文本域以及其响应事件
- Android 关于嵌套listView时onItemClick事件不响应的解决办法
- 关于PHP-Zend framework2 框架 学习过程。 阅前须知: ZF2中的配置文件是可以静态文件配置来注册和通过相关函数动态注册。 1.EventManager(事件驱动),关于事件驱动,在ZF2相关资料没有详细说明,可以参考ANDROID的事件驱动,MFC的消息响应/事件驱动。
- Android 关于嵌套listView时onItemClick事件不响应的解决办法
- Android中Spinner控件关于二次点击同一item无响应事件解析及处理方法
- Android关于嵌套listView时onItemClick事件不响应的解决方法
- 关于Android中ExpandableListView子项是Button控件而单击事件没有响应的问题
- Android_关于子控件和父控件的事件响应问题
- 【Android 事件处理】关于Android ViewPager中嵌套ScrollView的手势冲突
- 关于android事件传递