将图像分配给 UIImageView

Posted

技术标签:

【中文标题】将图像分配给 UIImageView【英文标题】:Assigning Image into UIImageView 【发布时间】:2017-09-25 09:58:32 【问题描述】:

我找不到该问题的解决方案。 我有以下代码

let imgData = self.getImgData(id: (entry["id"] as? Int)!)
let imgToShow = UIImage(data: imgData as Data)

imgToShow 是我所期望的。 我的意思是,在调试时它给了我我想要的预览。所以我确信它是正确的而不是零。

public func getImgData(id: Int) -> NSData
    let url = *
    let imgUrl = URL(string: url)!
    let imgData = NSData(contentsOf: imgUrl)!

    return imgData


我想将此imgToShow 分配给cell.img.image = imgToShow 但它给了我一个错误:

线程 1:EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)

您能否给我一些建议,我应该在哪里寻找解决方案? 提前谢谢你

【问题讨论】:

贴出self.getImgData(id: (entry["id"] as? Int)!)的代码 谢谢,已更新。但是我可以猜到这个功能可以正常工作,因为我可以在调试时看到图像的预览。 如果您声称“imgToShow is not nil”是正确的,那么我认为问题出在这部分:cell.img,所以请检查您的单元格是否正确并检查@987654328 @属性是正确的 所以,我尝试使用@SalmanGhumsani 解决方案,调用getImage(url) (data) in cell.img.image = data 图像已下载,我可以在调试时看到它,但在将其分配给 UIImageView 的位置相同。 img 的问题也可能是这样的:class AuthorTableViewCell: UITableViewCell @IBOutlet weak var img: UIImageView! override func awakeFromNib() super.awakeFromNib() self.imgId.isHidden = true 但我应该在哪里寻找 效果很好!谢谢。所以问题出在 UIImageView 项目上,因为有一个非常简单、愚蠢的错误。在重构期间,我更改了 Outlet 的名称,但已引用旧名称。刚刚重新连接了 Outlet,这就是我想要的。我在上面浪费了 2 天时间。这太简单了。无论如何,再次感谢您的课程,始终应检查参考资料。 【参考方案1】:

尝试重新连接插座!

另外,为了顺利下载图片试试Downloading UIImage via AlamofireImage?

【讨论】:

以上是关于将图像分配给 UIImageView的主要内容,如果未能解决你的问题,请参考以下文章

将剪切图像之一分配给精灵渲染器

将图像分配给字符串

如何将 blob 图像分配给 JLabel

将图像分配给 UIImageView

Metal如何将图像块分配给每个线程组?

将图像分配给从 Qimage 继承的类的对象