我在自定义UITableViewCell中显示UIImageView,仅用于在Firebase响应中设置了图像URL的单元格。代码如下:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cellIdentfier = "ArticleTableViewCell"
let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentfier, forIndexPath: indexPath) as!ArticleTableViewCell
//Configure the cell
// Added by ankit khanna for UIImageView change
let imageURL = imageArray[indexPath.row]
print ("Final Image URL: [\(imageURL)]")
if (imageURL == "NIL") {
cell.articalImageView.hidden = true
}
let fileUrl = NSURL(string: imageURL as String)
print ("File URL : [\(fileUrl!)]")
cell.articalImageView.hnk_setImageFromURL(fileUrl!)
// End
}
问题是,如果我删除if条件if (imageURL == "NIL")
图像正确显示但是当我向后滚动图像时,图像开始显示在它不应该显示的位置。
图像数组:var imageArray = [String]()
下面是我追加数组的代码
if (snapshot.value.objectForKey("image") != nil)
{
let url = snapshot.value.objectForKey("image")!
let f_url = String(url)
// print ("image1 URL : \(f_url)")
self.imageArray.append(f_url)
}
else if (snapshot.value.objectForKey("image") == nil)
{
self.imageArray.append("NIL")
}
我想如何为空的响应禁用UIImageView。
答案 0 :(得分:0)
我能够通过添加
来解决这个问题 在else语句中 cell.articalImageView.hidden = false
。
更正后的代码:
if (imageURL == "NIL") {
cell.articalImageView.hidden = true
}
else {
cell.articalImageView.hidden = false
let fileUrl = NSURL(string: imageURL as String)
print ("File URL : [\(fileUrl!)]")
cell.articalImageView.hnk_setImageFromURL(fileUrl!)
}