Основное использование RxJava

Обзор 
RxJava это библиотека , которая реализует асинхронную операцию. Он может заменить наш укротитель, AsynTask.


О 
RxJava ядра из двух Наблюдаемых (наблюдаемого источника событий) и подписчики (наблюдатель). 

Наблюдаемые издал ряд событий, абоненты обработки этих событий. 

Наблюдаемое может выдать ноль или больше событий, или знать конец ошибки. Каждый выпуск события, он будет вызывать его метод onNext Абонента, последний вызов Subscriber.onNext () или Subscriber.onError () конец. 
Примечание: Rxjava , кажется, хотят , чтобы разработать шаблон режим наблюдателя, но одна вещь , значительно отличается, то есть, если Observerble не имеет какого - либо подписчика, то это не будет выдавать какие - либо заметные события.

 

HelloWord 

В первую очередь связанной с ним упаковки

компилировать 'io.reactivex: rxandroid: 1.2.1'

компиляции «io.reactivex: rxjava: 1.1.6» 


// определим зритель

Наблюдаемый <String> myObservable = Observable.create ( 
новый Observable.OnSubscribe <String> () {
@Override
общественных недействительный вызова (Абонент <? Супер String> суб) {
  //向观察者发出通知                 
sub.onNext ( "Привет, мир ! ");                   
sub.onCompleted ();               
    }           
  }       
); 


Наблюдаемые объекты, определенные здесь просто отправить строку Hello World и затем закончились.

Затем создайте строку для обработки подписчиков исследуемых объектов испускаемых.

 

  // зритель имеет три метода      
  для подписчика <String> = новый новый mySubscriber для подписчика <String> () {            
  @Override            
  общественного недействительного OnNext (строка S) { 
  System.out.println (s); 
  }                   
  @Override            
  общественных недействительного OnCompleted () {}   
                 
   @Override            
   общественности к аннулированию OnError (The Throwable , Е) {}};    
 
// сделать отношения между наблюдателем и наблюдали для получения  myObservable.subscribe (mySubscriber);

 myObservable объект является вызов mySubscriber после // Подписка onNext и OnComplete метод, mySubscriber напечатает Hello World! 

HelloWord упрощена 

// RxJava построил множество функций для упрощения создания наблюдаемого объекта, такие Observable.just создают только издали 

// событие до конца Observable объекта, который может быть сокращен до одной строки 

Наблюдаемый <String> myObservable = Observable.just ( "Привет, мир!"); 

// давайте посмотрим, как упростить Абонент, в приведенном выше примере, мы на самом деле не заботимся о OnComplete и OnError,

// только нужно сделать некоторую обработку onNext времени, на этот раз мы можем использовать класс ДЕЙСТВИЙ1. 

  Action1 <String> onNextAction = новый Action1 <String> () { 
   @Override            
   общественного аннулируются вызова (String s) {                
   System.out.println (s);           
       }        
   };  
 

подписаться метод имеет освобождение от перегрузки, Action1 получает три типа параметров, соответственно, OnNext OnComplete, OnError функции. 

// Теперь      
 myObservable.subscribe (onNextAction);       
 // можно дополнительно упростить общую          
 Observable.just ( "! Вводной, World")         
 .Subscribe (Action1 нового нового <String> () {                
 @Override                
 общественных аннулируется вызов (String S) {  системы .out.println (S);  }  }); 
 
 

 

рекомендация

отwww.cnblogs.com/yanglanwan/p/11291557.html