Use Glide load into Imageview but delay(使用 Glide 加载到 Imageview 但延迟)
本文介绍了使用 Glide 加载到 Imageview 但延迟的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用 Glide 从 Firebase 加载我的 ImageView.
I use Glide to load my ImageView from Firebase.
当我运行我的应用程序时,我的 ImageView 会延迟(就像我视频中的牙齿一样),https://www.youtube.com/watch?v=6Mj0Xq3M8n0
When I am running my application, my ImageView will delay(like the tooth in my video), https://www.youtube.com/watch?v=6Mj0Xq3M8n0
所以我想知道为什么会这样,这是我的代码:
so I want to know why is this so,and this is my code:
private void setTooth() {
for(int j=0;j<tooth.length;j++) {
final int finalJ = j;
toothRef.child(j+1+"").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
if(dataSnapshot.getValue().toString().trim().equals("b"))
{
imageRef.child("tooth_dirty").child(finalJ%16+1+"").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(final DataSnapshot dataSnapshot) {
Glide.with(Home_Activity.this)
.load(Uri.parse(dataSnapshot.getValue().toString()))
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(tooth[finalJ]);
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
}
else
{
imageRef.child("tooth_clean").child(finalJ%16+1+"").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Glide.with(Home_Activity.this)
.load(Uri.parse(dataSnapshot.getValue().toString()))
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(tooth[finalJ]);
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
}
}
else
{
for(int i=0;i<tooth.length;i++)
toothRef.child(i+1+"").setValue("g");
setTooth();
}
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
}
}
我该如何解决我的问题?
How can I solve my problem?
推荐答案
尝试以下添加占位符
RequestOptions requestOptions = new RequestOptions();
requestOptions.placeholder(R.mipmap.ic_launcher);
requestOptions.error(R.drawable.error_img);
Glide.with(this)
.setDefaultRequestOptions(requestOptions)
.load("")
.into(imageViewPlaceholder);
或使用 apply 代替 setDefaultRequestOptions
or use apply instead of setDefaultRequestOptions
Glide.with(MainActivity.this)
.load(url)
.apply(requestOptions)
.into(imageview);
这篇关于使用 Glide 加载到 Imageview 但延迟的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:使用 Glide 加载到 Imageview 但延迟
基础教程推荐
猜你喜欢
- 如何从 logcat 中删除旧数据? 2022-01-01
- navigator.geolocation.getCurrentPosition 在 Android 浏览器上 2022-01-01
- Cocos2d iPhone 非矩形精灵触摸检测 2022-01-01
- Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER 2022-01-01
- libGDX 从精灵或纹理中获取像素颜色 2022-01-01
- AdMob 广告未在模拟器中显示 2022-01-01
- NSString intValue 不能用于检索电话号码 2022-01-01
- 通过重定向链接在 Google Play 中打开应用 2022-01-01
- iOS4 创建后台定时器 2022-01-01
- iPhone - 获取给定地点/时区的当前日期和时间并将其与同一地点的另一个日期/时间进行比较的正确方法 2022-01-01
