[英]How To Load Layout Background Using Picasso and cache it
我有在其背景上帶有可繪制對象的View(LinearView)。 如何在onSaveInstanceState中保存Drawable以提高顯示速度? 實際上,圖片是從Internet下載的,下載后將其設置為“查看背景”。 如果background!= null在onResume()中,則不應再從Internet加載它。
我嘗試過畢加索,但是我需要將圖像加載到View中,而不是ImageView中,因此我使用了以下方法:
final ImageView img = new ImageView(view.getContext());
Picasso.with(img.getContext())
.load(mImagesUrls[index])
.into(img, new com.squareup.picasso.Callback() {
@Override
public void onSuccess() {
view.setBackground(img.getDrawable());
}
@Override
public void onError() {
}
});
它下載圖像,但似乎沒有將其緩存,每次加載大約需要4秒鍾...
我也嘗試使用MyClass實現Picasso.Target,但它只是不調用onBitmapLoaded()方法。 哪里可能有問題?
謝謝大家提前回答!
在.into
之前添加.networkPolicy(NetworkPolicy.OFFLINE)
像這樣:
.load(mImagesUrls[index])
.networkPolicy(NetworkPolicy.OFFLINE)
.into(img, new com.squareup.picasso.Callback() {
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.