作者:JohnBeanLee | 来源:互联网 | 2023-05-18 11:42
每:
@IBOutlet weak var nameLabel: UILabel!
每当我声明我的IBOutlets时,我只使用var而不是weak var.但我最近遇到了一些使用弱var的代码模板.他们为什么这样做?还有什么好处?
为什么在UILabel结束时会有一个爆炸操作员.我知道这是必需的,我和它一起去,但现在就问它.
提前致谢.
1> Jérôme Leduc..:
默认情况下,Swift IBOutlet很弱(但默认情况下其他属性很强).所以写作都是一样的.
您有关于强和弱之间的区别更多的细节在这里
根据苹果文档
当您在Swift中声明一个插座时,您应该将插座的类型设置为隐式展开的可选(!).这样,您可以让故事板在初始化后在运行时连接出口.
2> gregheo..:
由于视图元素由视图拥有(强烈),因此出口很弱.我认为你的视图控制器在技术上也可以有一个强大的参考,但没有必要.
弱变量是可选的,因为它们可以nil
.您可以?
改为声明您的商店,但这意味着每次都使用强制展开或可选绑定.将它们声明为隐式解包的选项!
只是一种方便.