我一直在寻找一个如何做到这一点的KISS示例,虽然它们看起来都很简单(而且我已经完成了所有这些!),但我仍然无法理解这个概念.我指的是自定义侦听器(不扩展任何东西)...特别是,为布尔变量创建一个监听器,以便我可以在其值发生变化时引发一些方法.
这是我尝试过的一个例子: android如何使自定义变量的监听器?
如果有人有时间解释自定义监听器以及它如何以简单的英语工作,那将非常感激.我希望一旦我完全理解听众如何得到改变的通知,那么我将能够创建自己的并了解该死的东西是如何运作的.这让我头疼...提前谢谢
这是我现在所处的位置:
public class ChangeListener {
boolean boo = false;
public ChangeListener(boolean b){
boo = b;
}
private listener l = null;
public interface listener{
public void onChange(boolean b);
}
public void setChangeListener(listener mListener){
l = mListener;
}
public void somethingChanged(){
if(l != null){
l.onChange(boo);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我主要活动的快照:
public class Main extends Activity implements ChangeListener.listener{
private ChangeListener listener;
private boolean boo = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
listener = new ChangeListener(boo);
listener.setChangeListener(this); …Run Code Online (Sandbox Code Playgroud) 我有一个设计问题.我需要实现一个监听器.我看到了以下SO问题: 如何在android中创建自己的Listener接口?
但是在答案中提供的链接中,作者创建了一个只扩展系统定义的侦听器的侦听器.例如onClick,你会做一些验证然后调用另一个名为"whenValidatedListener"的方法
我需要定义未链接到现有事件侦听器的侦听器.基本上会在本机(C/C++)代码中进行一些处理,在Android代码中我需要一个监听器来响应来自它的某些消息.
我想我可以使用处理程序来做到这一点.但AsyncTask是多线程推荐的方法.
有没有办法使用AsyncTask实现用户定义的侦听器?