知道何时调用了监听器的方法

时间:2012-06-26 15:45:59

标签: java

我正在努力尝试谷歌这个主题。我一定不能使用正确的搜索字词。我在Android中有一个位置监听器,我通常将监听器嵌套在我正在使用它的类中。

public class ClassName {
    ...
    private class Listener implements SomeListener{
        ...
        public void somethingChanged(){
            ...
        }
    }
}

这次我决定让监听器成为一个新类,使代码更易于阅读,因此我可以重用它。所以现在我的监听器和使用监听器的类是分开的。

public class ClassName{
    ...
}

public class Listener implements SomeListener{
    ...
    public void somethingChanged(){
        ...
    }
}

所以在somethingChanged()方法中,我只是想通知我的主类发生了一个事件,所以我可以做一些更新。我想不出办法做到这一点。我不能在侦听器的方法中放置任何特定内容,或者它不可重用。如何使用侦听器调用从侦听器中调用方法的方法?

1 个答案:

答案 0 :(得分:2)

嗯,你知道,内部类知道外部类,因为你将类分开了,所以不再是这样了。

我建议将ClassName的实例传递给构造函数中的Listener,并从ClassName内调用somethingChanged的公共方法。