Ошибка: ни одна из следующих функций не может быть вызвана с аргументами, предоставленными при преобразовании в Kotlin из Java - PullRequest
0 голосов
/ 31 мая 2018

Я видел другие вопросы, связанные с этой ошибкой, но все еще не могу исправить.Кроме того, я задаю этот вопрос, потому что в отличие от других вопросов здесь, я получаю эту ошибку, только когда я конвертирую код в 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 Ответ

0 голосов
/ 31 мая 2018

Был конфликт при импорте пакета.Я также использую Observer из компонентов архитектуры.Импортируйте Обозреватель обоих пакетов, это будет решено.

Итак, для этого -

var observer:Observer<Bitmap> = Observer<Bitmap>()

Он отбирал Observer из компонентов архитектуры.

Я решил, используя это так -

var observer = object : io.reactivex.Observer<Bitmap>
...