Android – 事件侦听器

前端之家收集整理的这篇文章主要介绍了Android – 事件侦听器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望这将是简单的问题.
我有主要的活动,在这个活动中我创建了一个类的一个实例.如何将一个事件形式发送到主要的一个类?如何设置某种监听器在类之间发送通知.只有我所知道/使用的选项是继续引用父类,并直接从子类调用一些函数.

我想知道是否可以在ActionScript中创建类似的东西,我可以在其中调用dispatchEvent(new Event(“name”)),然后再安装addEventlistener(“name”函数)?

解决方法

如果“我实现一些类”意味着您已经在Activity类中声明了一个嵌套类,而不是嵌套的非静态类将引用父类对象.

一般来说,您可以随时创建调度员/监听器模式.创建监听器接口,并将addListener或setListener方法添加到将发送事件的类中.

监听器示例:

public interface IAsyncFetchListener extends EventListener {
    void onComplete(String item);
    void onError(Throwable error);
}

事件调度员示例:

public class FileDownloader {
    IAsyncFetchListener fetchListener = null;
    ...
    private void doInBackground(URL url) {
        ...
        if (this.fetchListener != null)
            this.fetchListener.onComplete(result);
    }

    public void setListener(IAsyncFetchListener listener) {
        this.fetchListener = listener
    }
}

事件侦听器的类示例:

public class MyClass {

    public void doSomething() {
        FileDownloader downloader = new FileDownloader();

        downloader.setListener(new IAsyncFetchListener() {

            public void onComplete(String item) {
                // do something with item
            }

            public void onError(Throwable error) {
                // report error
            }
        });

        downloader.start();
    }
}

猜你在找的Android相关文章