我希望这将是简单的问题.
我有主要的活动,在这个活动中我创建了一个类的一个实例.如何将一个事件形式发送到主要的一个类?如何设置某种监听器在类之间发送通知.只有我所知道/使用的选项是继续引用父类,并直接从子类调用一些函数.
我有主要的活动,在这个活动中我创建了一个类的一个实例.如何将一个事件形式发送到主要的一个类?如何设置某种监听器在类之间发送通知.只有我所知道/使用的选项是继续引用父类,并直接从子类调用一些函数.
我想知道是否可以在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(); } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。