我今天潛入RxJava。需要幫助將AsyncTask轉換爲RxJava
我有一個AsyncTask將圖像轉換爲位圖並將其設置爲Imageview。
我想是我的AsyncTask轉換爲RxJava
這是我下面的工作的AsyncTask:
String imageurl = "http://example.com/image.jpg";
new AsyncTask<String, Void, Void>() {
Bitmap theBitmap = null;
@Override
protected Void doInBackground(String... params) {
String TAG = "Message: ";
try {
theBitmap = Glide.
with(mContext).
load(mValues.get(params[0]).
asBitmap().
into(-1, -1).
get();
} catch (final ExecutionException e) {
Log.e(TAG, e.getMessage());
} catch (final InterruptedException e) {
Log.e(TAG, e.getMessage());
} catch (final NullPointerException e) {
Log.e(TAG, e.getMessage());
}
return null;
}
@Override
protected void onPostExecute(Void dummy) {
if (null != theBitmap) {
ImageView mImageView = (ImageView) findViewById(R.id.image);
mImageView.setImageBitmap(theBitmap);
}
}
}.execute(imageurl);
我知道我想提供我已經試過代碼,但我想有問題把我的頭圍繞RxJava。我只是需要一些開始。
我看到這個示例代碼,使用只要它將整數傳遞給onNext()函數。 http://reactivex.io/documentation/operators/just.html
Observable.just(1, 2, 3)
.subscribe(new Subscriber<Integer>() {
@Override
public void onNext(Integer item) {
System.out.println("Next: " + item);
}
@Override
public void onError(Throwable error) {
System.err.println("Error: " + error.getMessage());
}
@Override
public void onCompleted() {
System.out.println("Sequence complete.");
}
});
請,我怎麼可以把這段代碼轉換,所以我可以用它喜歡的AsyncTask
您需要在文檔中進一步介紹如何創建可觀察性的部分 – njzk2