Ошибка: ни одна из следующих функций не может быть вызвана с аргументами, предоставленными при преобразовании в Kotlin из Java
Я видел другие вопросы здесь, связанные с этой ошибкой, но все еще не удалось исправить. Кроме того, я задаю этот вопрос, потому что в отличие от других вопросов здесь, я получаю эту ошибку, только когда я конвертирую код в Kotlin из Java.
Я использую этот же код RxJava в Java, он отлично работает. Я преобразовал в Kotlin, и это дает эту ошибку -
Ошибка компиляции Kotlin: ни одна из следующих функций не может быть вызвана с предоставленными аргументами
var observable : Observable<Bitmap> = Observable.just(bitmap)
var observer:Observer<Bitmap> = Observer<Bitmap>() {
fun onSubscribe(d: Disposable) {
disposable = d
}
fun onNext(orientedBitmap:Bitmap) {
// do something
}
fun onError(e:Throwable) {
}
fun onComplete() {
}
}
observable.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
// It shows the error here
.subscribe(observer)
Кто-нибудь может объяснить, что здесь не так?
1 ответ
Это был конфликт при импорте пакета. Я также использую Observer из компонентов архитектуры. Импортируйте Обозреватель обоих пакетов, это будет решено.
Итак, для этого -
var observer:Observer<Bitmap> = Observer<Bitmap>()
Он отбирал Observer из компонентов архитектуры.
Я решил это, используя это так -
var observer = object : io.reactivex.Observer<Bitmap>