安卓中监听事件的三种实现方式

1、匿名内部类的实现方式

2、独立类的实现方式

3、实现接口方式实现

一、匿名内部类的实现

1、首先声明一个Button

    //声明一个Button
private Button Listener1;

2、设置Button的监听器,并且通过匿名内部类的方式实现

  @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置Button监听器,通过Button监听器我们可以实现Button点击的操作
Listener1=(Button)findViewById(R.id.btn1); /*
* 监听事件通过第一种方式实现(匿名内部类)
* */
Listener1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) { System.out.println("这是第一种方式(匿名内部类的实现)实现监听事件");
}
});

二、独立类的方式实现

1、首先声明一个Button

//首先声明一个Button
private Button Listener2;

2、创建一个外部独立类,来监听事件

//创建一个外部独立类,来监听事件
OnClickListener listener=new OnClickListener(){ @Override
public void onClick(View v) {
System.out.println("这是第二种方式(独立类)实现监听事件");
}
};

3、实现监听事件

       /*
* 监听事件通过第二种方式 独立类 实现
* */
Listener2.setOnClickListener(listener);

三、实现接口方式实现

1、创建一个Button

    //声明一个Button
private Button Listener3;

2、实现接口

//实现接口 OnClickListener
public class MainActivity extends ActionBarActivity implements OnClickListener { @Override
protected void onCreate(Bundle savedInstanceState) {
Listener3=(Button)findViewById(R.id.btn3); /*
* 监听事件通过第三种方式实现(通过接口方式实现)
* 1、首先 实现implements OnClickListener 接口
* */
Listener3.setOnClickListener(this);
} //监听事件实现方式3:接口方式
//实现 implements OnClickListener 接口
@Override
public void onClick(View v) {
System.out.println("这是第三种方式(接口方式实现)实现监听事件");
}

源码下载

最新文章

  1. 从微软下载安装Windows10
  2. 【C语言入门教程】目录/大纲
  3. Sass浅谈
  4. relatedTarget、fromElement、toElement之间的关系
  5. myeclipse 10 优化
  6. POJ 3111
  7. java邮件客户端
  8. hdu3415:最大k子段和,单调队列
  9. VBS 操作注册表 十六进制
  10. 13-7-1 做了一个360优化大师的主页(就是一个主页UI)
  11. Linux下gcc编译生成动态链接库*.so文件并调用它
  12. C# Sap Rfc 连接代码实例
  13. SpringBoot整合系列--整合MyBatis-plus
  14. MongoDB索引基本操作
  15. caffe源码阅读
  16. android项目生成aar和引用aar解决方案
  17. leetcode 20. Valid Parentheses 、32. Longest Valid Parentheses 、
  18. linux安装中文输入法
  19. Kalman滤波器从原理到实现
  20. Nginx是如何配置为 Web 服务器的【转载】

热门文章

  1. 配置MapReduce插件时,弹窗报错org/apache/hadoop/eclipse/preferences/MapReducePreferencePage : Unsupported major.minor version 51.0(Hadoop2.7.3集群部署)
  2. 文件操作之增删改查3---文件的修改,f.replace(),在linux里的一些应用sed,with语句方法来打开一个或多个文件避免忘记关闭,python一行写的太长,怎么编写多行的规范
  3. PHP面向对象深入研究之【高级特性】
  4. python开发线程:死锁和递归锁&信号量&定时器&线程queue&事件evevt
  5. node.js的了解
  6. springboot成神之——mybatis和mybatis-generator
  7. 定时器Quartz ClassNotFound org.springframework.scheduling.quartz.SchedulerFactoryBean
  8. MySQL5.7新特性
  9. 编译错误error: invalid&nbsp…
  10. 关于sleep的理解