如何将Uri.toString存入donation类?解决构造函数无法解析报错
解决方法
1. 为donation类添加对应构造方法及成员变量
报错的核心原因是你的donation类没有定义接收String类型参数的构造函数。你需要先在donation.java中添加存储Uri字符串的成员变量,再补充对应的构造方法:
public class donation { // 添加存储Uri字符串的成员变量 private String imageUri; // 必须保留无参构造(Firebase序列化/反序列化要求) public donation() {} // 添加接收String类型参数的构造方法 public donation(String imageUri) { this.imageUri = imageUri; } // 添加getter方法(供Adapter获取Uri用) public String getImageUri() { return imageUri; } // 可选:添加setter方法 public void setImageUri(String imageUri) { this.imageUri = imageUri; } // 保留你原本类中的其他成员变量、构造方法和方法 }
2. 验证调用代码
现在你可以正常调用new donation(uri.toString())了,因为类中已经存在对应的构造方法。
3. 在CardView中加载图片
当你从donation对象中取出Uri字符串后,可使用图片加载库(如Glide)在CardView的ImageView中显示图片:
// 假设在Adapter的onBindViewHolder方法中 donation item = getItem(position); String imageUri = item.getImageUri(); Glide.with(holder.itemView.getContext()) .load(imageUri) .into(holder.imageView);
内容的提问来源于stack exchange,提问作者JMT
相关产品推荐
相关产品推荐

