哪种风格是首选的?哪一个更快呢?
titleLabel?.adjustsFontSizeToFitWidth = true;
titleLabel?.textAlignment = NSTextAlignment.Center
titleLabel?.minimumScaleFactor = 0.2vs
if let lbl = titleLabel? {
lbl.adjustsFontSizeToFitWidth = true
lbl.textAlignment = NSTextAlignment.Center
lbl.minimumScaleFactor = 0.2
}发布于 2015-05-02 03:43:01
担心可读性,而不是速度。
请注意,如果您在Xcode中拖动来创建outlets,它将使用!(强制展开)而不是?预计在运行时插座将被正确连接,因此您不应该进行检查。您的IBOutlets应该如下所示:
@IBOutlet private weak var titleLabel: UILabel!用于操作IBOutlet对象的代码通常应如下所示:
self.titleLabel.adjustsFontSizeToFitWidth = true
self.titleLabel.textAlignment = .Center
self.titleLabel.minimumScaleFactor = 0.2另一方面,如果你在代码中有条件地创建这个视图(nil是一个有效值)...
private var titleLabel: UILabel?如果要创建视图并一起设置其值,请执行以下操作:
let titleLabel = UILabel(frame: CGRect(...))
titleLabel.adjustsFontSizeToFitWidth = true
titleLabel.textAlignment = .Center
titleLabel.minimumScaleFactor = 0.2
self.titleLabel = titleLabel如果你已经在别处创建了视图(所以它是可选的),现在你需要更新它的属性:
if let titleLabel = self.titleLabel {
titleLabel.adjustsFontSizeToFitWidth = true
titleLabel.textAlignment = .Center
titleLabel.minimumScaleFactor = 0.2
}https://stackoverflow.com/questions/29993380
复制相似问题