UIViewControllerのサブクラスを呼び出す際に、必要な変数が初期化されてなければビルドエラーにするには
あるViewControllerからwebviewを持ったmyWebViewControllerを呼び出すとします。その際に任意のURLを渡します。以下の様なコードです。
let myWebViewController = MyWebViewController()
myWebViewController.url = NSURL(string: "https://google.com")!
self.navigationController?.showViewController(myWebViewController, sender: nil)
もしこの場合、urlが渡されなかったとしてもビルドエラーは発生しません。
//これでもビルドエラーは起きない
let myWebViewController = MyWebViewController()
self.navigationController?.showViewController(myWebViewController, sender: nil)
urlがnilのままでも、実行されるまで気づく事が出来ません。
これを防ぐためには、どのような書き方が適切でしょうか?
urlに何かしらのNSURL型がセットされる事を強制したいです。
サンプルコードはこちらに
https://github.com/nishiyamaosamu/myWebViewSample
swift:2.1
xcode:7.1.1
よろしくお願い致します。