5

I have an Observable in my oncreate and I want to get the results on my main thread. But since The AndroidScheduler.mainThread works with just Java Observable, I am unable to compile it. Here's the code

val L=List(1,2,3) val a=Observable.from(L).observeOn(AndroidSchedulers.mainThread()).subscribe(i=>println(i)) 

Here 'a' is a rx.scala.lang Observable. And this is the compile time error I am getting

 Error:(38, 70) type mismatch; found : rx.Scheduler required: rx.lang.scala.Scheduler val a=Observable.from(L).observeOn(AndroidSchedulers.mainThread()).subscribe(i=>println(i)) ^ 

Please help in solving this.

1 Answer 1

5

The JavaConversions class contains the method you need to convert from a "Java Scheduler" (the rx.Scheduler) to a "Scala Scheduler" (the rx.lang.scala.Scheduler) - javaSchedulerToScalaScheduler:

val a=Observable.from(L) .observeOn(JavaConversions.javaSchedulerToScalaScheduler(AndroidSchedulers.mainThread())) .subscribe(i=>println(i)) 
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.