【发布时间】:2019-03-24 23:49:48
【问题描述】:
我在我的应用中使用 glide 来显示图像。图像来自 amazon s3 并在图像视图中加载。但有时滑行只是加载图像的一部分。我正在使用它的缓存策略。当我将缓存设置为 false 时,每次都会加载图像。这将花费大量数据给用户。所以我认为那不是一个好的选择。下面是我的代码和问题图片。
滑行代码:
Glide.with(context).load(posts.get(position).getFile()).placeholder(R.drawable.qurbani_background_6).error(R.drawable.error_image)
.fitCenter().listener(new RequestListener<File, GlideDrawable>() {
@Override
public boolean onException(Exception e, File model, Target<GlideDrawable> target, boolean isFirstResource) {
holder.progressBar.setVisibility(View.GONE);
//Toast.makeText(context , e.toString() , Toast.LENGTH_LONG).show();
//HomeActivity h = new HomeActivity();
//h.galleryTask();
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, File model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
holder.progressBar.setVisibility(View.GONE);
return false;
}
}).into(holder.postImage);
和amazon s3下载监听代码:
public void transferObserverListener(final TransferObserver transferObserver)
{
transferObserver.setTransferListener(new TransferListener(){
@Override
public void onStateChanged(int id, TransferState state)
{
Log.e("statechange", state+"");
if(state.toString() == "COMPLETED")
{
adapter.notifyDataSetChanged();
}
}
@Override
public void onProgressChanged(int id, long bytesCurrent, long bytesTotal)
{
int percentage = 0;
if(bytesTotal != 0)
{
percentage = (int) (bytesCurrent / bytesTotal * 100);
}
Log.e("percentage",percentage +"");
}
@Override
public void onError(int id, Exception ex)
{
p.dismiss();
Log.e("error",ex.toString());
}
});
}
我正在使用回收站视图。图片应该以全视图加载。请告诉我我做错了什么。
【问题讨论】:
-
是的,我已经看到了....但是没有解决方案....:P
标签: android image android-glide