我正在阅读一本书中的教程,并希望在没有阅读本书中的代码的情况下继续前进,看看我会根据说明自行提出什么。通过在loadView()函数之外全局创建MKMapView对象,我的代码略有不同,但是本书在loadView()函数中创建了MKMapView对象。这两个过程都有效,所以我想知道iOS开发社区中是否存在很多差异或偏好?
提前谢谢。
我的代码:
import Foundation
import UIKit
import MapKit
class MapViewController: UIViewController {
var mapView: MKMapView = MKMapView()
override func loadView() {
view = mapView
}
}
这本书的代码:
import Foundation
import UIKit
import MapKit
class MapViewController: UIViewController {
var mapView: MKMapView!
override func loadView() {
mapView = MKMapView()
view = mapView
}
}
答案 0 :(得分:1)
不同之处在于第一种情况是在初始化视图控制器时创建地图视图。
在第二种情况下,首次访问viewController.view
时会懒惰地创建视图。
我推荐第二种方法,因为这符合Apple的建议。