我正在尝试将Firebase图片放入RecyclerView,并且由于我的方法仅适用于以下类型的链接:
我正在尝试使用以下代码获取每个图像的链接:
FirebaseRecyclerAdapter<Viaje,ListaViajes.MyHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Viaje, MyHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull final MyHolder holder, int position, @NonNull Viaje model) {
storageReference = FirebaseStorage.getInstance().getReference();
StorageReference pathRef = storageReference.child("images").child(model.getUserName()+".jpeg");
holder.setSitio(model.getSitio().toString());
holder.setPruebaImagen(pathRef.getDownloadUrl().toString());
});
}
带有我的“自定义方法”的MyHolder类(与手动键入的url一起很好地工作)
public static class MyHolder extends RecyclerView.ViewHolder{
View mView;
public MyHolder(View itemView)
{
super(itemView);
mView=itemView;
}
public void setPruebaImagen(String url)
{
ImageView imageView = mView.findViewById(R.id.image_view);
GlideUtil.loadProfilePhoto(url,imageView );
}
}
图像位于名为images的文件夹中,并以用户的用户名命名,这就是我拨打电话model.getUserName()
问题是,实际上没有图像显示。
我认为storageReference可以正常工作,因为它获得了值gs://benaluma-1522696560348.appspot.com/
,但是从那时起,我就迷路了,也许这只是.child方法语法或.getDownloadUrl
方法的问题,谢谢!