我使用Otto事件总线订阅Volley Requests。我想使用这个泛型类,但错误的片段(订阅者)尝试处理该事件。可以使用泛型类,还是随机的VolleyResultEvent的每个订阅者,与泛型类型无关,称为?
public class VolleyResultEvent<T> {
public final VolleyResult result;
public final T content;
public VolleyResultEvent(VolleyResult result, T content) {
this.result = result;
this.content = content;
}
public enum VolleyResult {
SUCCESS, ERROR
}
}
答案 0 :(得分:3)
无论类型泛型如何,都会调用VolleyResultEvent
的每个订阅者。您是否希望根据您拥有的类型数量制作VolleyResultEvent
的几个子类;或实现匹配函数,例如,将事件id(或类型)与订户的id(或类型)进行比较,并允许进一步处理(如果它们相等)。