Ios 在viewDidLoad或var'中配置UIView;迪塞特
考虑以下配置Ios 在viewDidLoad或var'中配置UIView;迪塞特,ios,swift,Ios,Swift,考虑以下配置MKMapView映射类型的示例。是否应在viewDidLoad()中执行此操作 或者在风险值的didSet @IBOutlet weak var mapView: MKMapView! { didSet { mapView.mapType = MKMapType.Hybrid } } 两者都有效,Swift的首选方式是什么?它们各自有不同的用途 如果要在每次设置属性时设置mapType,请使用didSet 如果在加载视图时只需要设置一次mapTyp
MKMapView
映射类型的示例。是否应在viewDidLoad()中执行此操作
或者在风险值的didSet
@IBOutlet weak var mapView: MKMapView! {
didSet {
mapView.mapType = MKMapType.Hybrid
}
}
两者都有效,Swift的首选方式是什么?它们各自有不同的用途
如果要在每次设置属性时设置mapType
,请使用didSet
如果在加载视图时只需要设置一次mapType
,请使用viewDidLoad
考虑到您正在做的事情,我想说,didSet
是更正确的选择
顺便说一句,这与“快速首选方式”无关。同样的逻辑适用于任何语言。我不确定Objective-C是否有didSet
conceptSort。您将重写属性的“setter”方法。我还在didSet works中设置映射委托。布置得又好又干净。这篇博文中也讨论了这一点,是否可以更保证地图可以在viewDidLoad()
中使用?从技术上讲,在分配mapView
后调用didSet
。在分配mapView
和viewDidLoad()
之间是否会发生其他初始化?如果在此didSet
之前调用了viewDidLoad
,则表示调用viewDidLoad
时尚未设置属性。这是可能发生的。使用didSet
而不是viewDidLoad
的另一个原因。
@IBOutlet weak var mapView: MKMapView! {
didSet {
mapView.mapType = MKMapType.Hybrid
}
}