我正在用自定义单元格填充tableView。我从元组(String:String)
的数组中获取了单元标签文本和imageView图像,其中第一个值是商店名称,第二个值是存储在Firebase存储中的图像的Url。
在对Firebase的查询结束时,我得到了availableShopsArray
的填充,并为tableView重新加载了数据。在cellForRowAt
函数中,我将元组的两个参数分配给单元格标签和图像。但是在重新加载数据时,我在AppDelegate中得到了错误。
这是我声明函数的方式:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "shopCell", for: indexPath as IndexPath) as! ShopTableViewCell
cell.shopNameLabel.text = self.availableShopsArray[indexPath.row].0
let url = URL(string: self.availableShopsArray[indexPath.row].1)
let data = try? Data(contentsOf: url!) //make sure your image in this url does exist, otherwise unwrap in a if let check / try-catch
cell.imageView?.image = UIImage(data:data!)
return cell
}
这是我的细胞班级:
import UIKit
class ShopTableViewCell: UITableViewCell {
@IBOutlet weak var makerImageView: UIImageView!
@IBOutlet weak var shopImageView: UIImageView!
@IBOutlet weak var shopNameLabel: UILabel!
@IBOutlet weak var shopRatingLabel: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
关于
的任何想法答案 0 :(得分:1)
我要做的第一件事是创建一个异常,以尝试查找错误的位置,这是有关如何执行此操作的有用教程:https://mukeshthawani.com/debug-the-sigabrt-error-exception