ios - 为什么用图像初始化 UIImageView 对象返回 nil?
问题描述
@IBOutlet weak var checkMark: UIImageView!
override func viewDidLoad() {
checkMark = UIImageView(image: UIImage?)
}
我已经初始化了一个对象并使用 UIImage 设置它。我认为这会初始化一个带有图片的对象,因此它应该显示在屏幕上,但它在checkMark.isHidden = true
.
所以,我使用这种方法,只需将资产中的图像设置为checkMark.image
. 它有效,但我不知道这两者之间有什么区别。
checkMark.image = #imageLiteral(resourceName: "answerCheckMark.png")
解决方案
这似乎是一个出口,所以不要这样做
checkMark = UIImageView(image:myImage)
因为它将更改对weak var
未保留(UIImageView(image:myImage)
)rhs的引用,这将使其为零,您可以阅读该行中显示的警告xcode,因此只需更改图像属性
推荐阅读
- javascript - 我可以将比较作为函数参数传递吗?
- google-drive-api - 为什么 Google Drive 父 API 出现在 v2 中,但没有出现在 v3 中?
- android - SupportActionBar:如何更改标题?
- symfony - VarDumper 中的着色字符串
- react-native - React-Native Picker 不是下拉菜单
- sql - Postgres 生成一系列列
- wso2 - Publisher 和 Store 的 WSO2 APIM 3.0.0 安装/配置问题:“invalid_callback - 注册的回调与提供的 url 不匹配”
- ruby-on-rails - 无法直接上传到不同区域
- haskell - 使用递归在haskell中编写函数以确定字符列表中有多少位
- arrays - 我如何在这个网站上询问有关数组的问题