如何在 Swift 3 中使用 SDWebImage 正确设置 UITableViewCell 中的 ImageView
How to properly set ImageView in a UITableViewCell with SDWebImage in Swift 3
我是 Swift 和 iOS 的新手,在这种情况下我想获取一个 URL 字符串数组并在 UITableViewCell 中填充一个 ImageView,我已经做了一个合适的class for,叫做MyTableViewCell。
它正在崩溃,我收到错误消息:
"fatal error: unexpectedly found nil while unwrapping an Optional value"
当行 imageTableView.datasource = self
运行时,我可以看到在 viewDidLoad() 中发生了。
我在视图中设置数据和委托是这样的:
override func viewDidLoad() {
super.viewDidLoad()
imagesTableView.dataSource = self
imagesTableView.delegate = self
}
下面,imageUrls
是一个字符串数组。
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: MyTableViewCell = tableView.dequeueReusableCell(withIdentifier: "myTableViewCell", for: indexPath) as! MyTableViewCell
cell.imageView.sd_setImage(with: URL(string: imageUrls[indexPath.row]))
return cell
}
我在 class:
中有一个电池插座
@IBOutlet var imagesTableView: UITableView!
我的问题是,使用 swift 3 和 SDWebImage 执行此操作的正确方法是什么,why/where imagesTableView 的 nil 值是否出现?
可能值得注意的是,我还尝试将一些字符串 URL 值硬编码到 imageUrls 中以确保这不是问题所在(我对硬编码值也有同样的错误)。
事实证明,虽然我连接了一个插座,但它以某种方式丢失了引用 - 我删除了整个表视图和子视图并重新创建并连接它们,错误消失了。我之前拖放插座时一定发生了一些奇怪的事情。
我是 Swift 和 iOS 的新手,在这种情况下我想获取一个 URL 字符串数组并在 UITableViewCell 中填充一个 ImageView,我已经做了一个合适的class for,叫做MyTableViewCell。
它正在崩溃,我收到错误消息:
"fatal error: unexpectedly found nil while unwrapping an Optional value"
当行 imageTableView.datasource = self
运行时,我可以看到在 viewDidLoad() 中发生了。
我在视图中设置数据和委托是这样的:
override func viewDidLoad() {
super.viewDidLoad()
imagesTableView.dataSource = self
imagesTableView.delegate = self
}
下面,imageUrls
是一个字符串数组。
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: MyTableViewCell = tableView.dequeueReusableCell(withIdentifier: "myTableViewCell", for: indexPath) as! MyTableViewCell
cell.imageView.sd_setImage(with: URL(string: imageUrls[indexPath.row]))
return cell
}
我在 class:
中有一个电池插座@IBOutlet var imagesTableView: UITableView!
我的问题是,使用 swift 3 和 SDWebImage 执行此操作的正确方法是什么,why/where imagesTableView 的 nil 值是否出现?
可能值得注意的是,我还尝试将一些字符串 URL 值硬编码到 imageUrls 中以确保这不是问题所在(我对硬编码值也有同样的错误)。
事实证明,虽然我连接了一个插座,但它以某种方式丢失了引用 - 我删除了整个表视图和子视图并重新创建并连接它们,错误消失了。我之前拖放插座时一定发生了一些奇怪的事情。