[英]How to use Picasso to read image from InputStream
我通過使用response.body().byteStream()
得到一個InputStream
如何使用畢加索從InputStream
加載圖像?
使用自定義畢加索下載器。 您必須創建自定義類,並僅在您的類中實現Downloader(picasso)並定義load方法,而無需直接在API中公開功能。
public class DropBoxThumbDowloader implements Downloader {
private final DropBoxInteractor mDropBoxInteractor;
public DropBoxThumbDowloader(DropBoxInteractor dropBoxInteractor) {
mDropBoxInteractor = dropBoxInteractor;
}
@Override
public Response load(Uri uri, boolean localCacheOnly) throws IOException {
InputStream in = mDropBoxInteractor.getThumbnailStream(uri.toString());
return new Response(in, false, -1);
}
}
這樣叫
Picasso picassoInstance = new Picasso.Builder(context.getApplicationContext()).downloader(new DropBoxThumbDowloader(dropBoxInteractor)).build();
自定義加載方法將返回一個響應(該響應在其構造函數中接受InputStream或Bitmap參數),該響應將作為畢加索的句柄。
最后
picassoInstance.load(path).into(imageView);
更多細節
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.