问题描述:
当一个事件的触发不定期的时候,即我们不知道这个触发何时来到,但是我们却要对这个触发执行某些方法,如何实现?
可能的解决方案:
我当时就想到了,这个问题类似与Android的部件监听(我没有去看Android的源码,太懒了。。。)。由于现在还在研读Thinking in Java这种入门书籍,突然来了想法,罗列如下,可以通过接口。
下面是我写的一个测试的例子
首先是一个类似Button的部件
package com.example.androidtest2.service; /** * 这个类类似于Button这样的部件 * @author qingxiangzhang * */ public class XXComonent { public static void setOnClickListener(XXXComponentClickListener clickListener){ for(int i=0; i<5;i++) clickListener.xxxxComponentClickResponse(i); } }
然后是这个部件的监听方法
package com.example.androidtest2.service; /** * 这个类类似于Button的setOnClickListener方法 * @author qingxiangzhang * */ public interface XXXComponentClickListener { public void xxxxComponentClickResponse(int i); }
最后是如何来获得 这个 部件点击触发的响应,我们来打印出上面输入的0-5
XXComonent.setOnClickListener(new XXXComponentClickListener() { @Override public void xxxxComponentClickResponse(int i) { Log.e("点击事件的触发", String.valueOf(i)); } });
OK, 问题解决了,现在我想去翻看Android源码了。
时间: 2024-10-10 07:56:13