viewdidload()はUIViewControllerオブジェクトのそのインスタンスのライフサイクルで一度呼び出されるだけなので、setBackgroundColor()は一度だけ呼び出される関数であり、不必要に読み込まれるため、この例は「悪い習慣」です。 viewdidload()の内部に完全に(定義され呼び出されて)本当に存在するはずのクラス全体のメモリに格納されますか?効率性の面では、setBackgroundColor()が定義されて呼び出される場所は関係ありませんか?viewdidload()の中で関数を定義することは、それらを外側に定義するよりも多くのメモリを節約しますか?
class MasterViewController: UIViewController {
func setBackgroundColor() {
self.view.backgroundColor = UIColor.green
}
// Do any additional setup after loading the view, typically from a nib.
override func viewDidLoad() {
super.viewDidLoad()
setBackgroundColor()
}
// Dispose of any resources that can be recreated.
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
ドキュメントでは、「このメソッドを使用してView Controllerに必要な追加設定を実行する」と言いますが、背景色を実際に「追加設定」に設定していますか?それはプライマリではなく、基本的なセットアップですか? funcは、viewdidload()の中にないと読み込まれません。これは、「追加設定」の文言が少し誤解を招くと思います。はい? –
viewControllerはビューとは異なることに気づくことが重要です。 viewControllerの設定の一部であるビューの色を設定しています。 – toddg