Skip to content

Instantly share code, notes, and snippets.

@vamsitallapudi
Created November 4, 2017 11:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vamsitallapudi/761086926b580d395ef35b07d18e4a12 to your computer and use it in GitHub Desktop.
Save vamsitallapudi/761086926b580d395ef35b07d18e4a12 to your computer and use it in GitHub Desktop.
Simple Rx Activity created for blog www.coderefer.com
package com.coderefer.rxandroidexamples.intro;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import com.coderefer.rxandroidexamples.R;
import io.reactivex.Observable;
import io.reactivex.Observer;
import io.reactivex.disposables.Disposable;
public class SimpleRxAndroidActivity extends AppCompatActivity {
private Observable<Integer> mObservable;
private Observer<Integer> mObserver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
// code to initialize Observable
private void initializeObservable() {
mObservable = Observable.create(e -> {
for(int i=1; i<=5;i++){
e.onNext(i);
}
e.onComplete();
});
}
// Code to initialize Observer
private void initializeObserver() {
mObserver = new Observer<Integer>() {
@Override
public void onSubscribe(Disposable d) {
Toast.makeText(SimpleRxAndroidActivity.this, "onSubscribe called", Toast.LENGTH_SHORT).show();
}
@Override
public void onNext(Integer integer) {
Toast.makeText(SimpleRxAndroidActivity.this, "onNext called: " + integer, Toast.LENGTH_SHORT).show();
}
@Override
public void onError(Throwable e) {
Toast.makeText(SimpleRxAndroidActivity.this, "onError called", Toast.LENGTH_SHORT).show();
}
@Override
public void onComplete() {
Toast.makeText(SimpleRxAndroidActivity.this, "onComplete called", Toast.LENGTH_SHORT).show();
}
};
}
// method which will be called on button click
public void performAction(View view) {
initializeObservable();
initializeObserver();
// subscribing observer to observable
mObservable.subscribe(mObserver);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment