实例将立即解除分配,因为属性'imageView'已'weak'



我正在尝试将我的应用程序更新到 Xcode 10 (iOS 12(,编辑器向我显示了很多警告消息:

实例将立即解除分配,因为属性"imageView"为"弱">

所有这些警告(我有很多,真的,真的很多(出现在UIImageView出口上。

@IBOutlet weak var imageView : UIImageView!
let logo = UIImage(named: "Cartoon.png")
imageView = UIImageView(image:logo)

警告出现在以下行中:

imageView = UIImageView(image:logo)

一些想法?

主要原因是imageView属性

@IBOutlet weak var imageView : UIImageView!

weak所以当你设置这个

imageView = UIImageView(image:logo)

LHS不保留RHS,因为它很弱,因此imageView将被nil,如果你想设置图像使用。

imageView.image = UIImage(named: "Cartoon.png")

https://medium.com/@gurdeep060289/color-image-new-literals-in-the-cocoa-town-7ef4f2710194

因为初始化插座没有意义

抱歉,我找到了答案。

我现在才找到答案:

imageView.image = UIImage(named: "Cartoon.png")

忘记:

imageView = UIImageView(image:logo)

甚至:

imageView = UIImageView(image: UIImage(named: "Cartoon.png"))

只需上面的代码:

imageView.image = UIImage(named: "Cartoon.png")

相关内容

最新更新