【发布时间】:2018-01-28 08:11:02
【问题描述】:
我正在尝试通过使用 'com.firebaseui:firebase-ui-storage:0.6.0' 中提供的 Glide 方法扩展 BaseAdapter 来在 ListView 中加载 ProfileImages(我知道它已过时)包。
参考:https://firebase.google.com/docs/storage/android/download-files#downloading_images_with_firebaseui
这里是Adapter的getView()方法
@Override
public View getView(int position, View convertView, ViewGroup parent) {
...
...
if (tempProfile != null) {
FirebaseStorage storage = FirebaseStorage.getInstance();
StorageReference storageRef = storage.getReferenceFromUrl("path_to_image");
**** Problem ****
Glide.with(context /* context */)
.using(new FirebaseImageLoader())
.load(storageRef)
.into(viewHolder.profileImage_IV);
**** See alternate line of code ****
}
else {
viewHolder.profileImage_IV.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.no_image));
}
****问题****:代码的滑行在所有行的 ImageView 中膨胀图像(很多不必要的行被图像膨胀)。 else{} 部分能够覆盖一些图像,但不能覆盖所有图像。因此,我得到了错误的结果。
观察:但不是 Glide 代码行,如果我使用这行代码,我会得到正确的结果。
viewHolder.profileImage_IV.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.accept));
谢谢!
【问题讨论】:
-
什么是 eventContentRef?
-
抱歉打错了。修好了!
-
您是否在不同的列表位置获得了重复的图像?
-
是的。正是我遇到的问题。
-
并且storage ref会根据列表位置变化对吧?
标签: android firebase android-glide firebaseui