2017-10-29 4 views
0

私は本からのチュートリアルに従っていて、その本のコードを読まずに先に進んで、指示に基づいて自分自身で何が出てくるのかを見たいと思っています。私のコードは、loadView()関数の外部でMKMapViewオブジェクトをグローバルに作成することによって少し異なりますが、ブックはloadView()関数内にMKMapViewオブジェクトを作成します。両方のプロセスが機能するので、iOS開発コミュニティの間に大きな違いがあるかどうかを知りたいですか?クラスのスコープ内に明示的にビューオブジェクトを作成するか、loadView関数を作成するかの違いはありますか?

ありがとうございます。

マイコード:

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 
    } 

} 

答えて

1

違いは、ビューコントローラが初期化されるときに、マップビューを右に作成された最初のケ​​ースです。

viewController.viewに最初にアクセスしたときに、ビューが遅れて作成されます。

アップルの推奨に従っているので、2番目のアプローチをお勧めします。

関連する問題