Android UI事件处理——实现事件监听接口的4种方法

来源:互联网 发布:艾玛罗伯茨的身材知乎 编辑:程序博客网 时间:2024/06/05 11:24

前段时间看到一个同学的android课程有这样一个作业要求:....... 非内部类实现onClickListener监听接口的方式监听按钮单击事件 .......

 

感觉蛮奇怪,一般对于UI事件的处理,都习惯性的采用内部类或者匿名内部类来实现。查看了一下Android的文档,对于UI Events, 很多其他文档中都有详细的说明,那么对于事件监听器的接口的实现方法呢?

其实这涉及一些Java基础知识,主要是内部类,还有一些概念,如:程序框架(application framework),控制框架(control framework),以及设计模式中的模版方法,大家可以上网查询相关资料,这里就不去copy过来了。

 

对于事件监听器的实现,我总结有以下四种方法:

 

自身类实现事件监听器接口对于同一下XXXListener callback只能有一个实现内部类实现事件监听器常用,可以方便的访问其外围类的任意成员,一个内部类在此也可以代表解决问题的一个操作匿名内部类实现事件监听器常用,如上外部类实现事件监听器接口罕见,棘手的问题,如果需要访问Activity类的成员,需要在构造方法中传入Activity对象