我正在尝试建立一个MVVM模式的android应用程序。
除了rx-java部分之外,一切都很好。
在订阅中使用观察者,我得到了一个类似这样的错误。
Error:(28, 18) None of the following functions can be called with the arguments supplied:
public final fun subscribe(p0: ((Flyer!) -> Unit)!): Subscription! defined in rx.Observable
public final fun subscribe(p0: Observer<in Flyer!>!): Subscription! defined in rx.Observable
public final fun subscribe(p0: Subscriber<in Flyer!>!): Subscription! defined in rx.Observable
public final fun subscribe(p0: Action1<in Flyer!>!): Subscription! defined in rx.Observable我的代码
override fun getflyers(observer: Observer<List<Flyer>>) {
homeService.flyer(createMap())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(observer) // error here
}对我有什么建议吗?
谢谢。
发布于 2018-01-11 03:15:50
看起来你的观察者是Observer<List<Flyer>>,但是你需要一个Observer<Flyer>。该服务正在发出传单,而您的观察者正在查找它们的列表。可能想要将您的观察者重做为Observer<Flyer>
https://stackoverflow.com/questions/48193870
复制相似问题