Swiftで遊ぼう! - 310 - My Fourth Project didReceiveMemoryWarning()
Swiftで遊ぼう!の古い記事-> Life-LOG OtherSide
質問 : Swiftで遊ぼう! - 252 - FaceViewプロジェクト始動 - Swiftで遊ぼう! on Hatena
Beginning iPhone Development with Swift: Exploring the iOS SDK
- 作者: David Mark,Jack Nutting,Kim Topley,Fredrik Olsson,Jeff LaMarche
- 出版社/メーカー: Apress
- 発売日: 2014/11/19
- メディア: Kindle版
- この商品を含むブログを見る
switchViewControllerのコードを説明する前に、重要なことを説明します。
UIViewControllerをXcodeで作った時、必ず用意されているテンプレートが2つあります。
1つは、既に何度も説明しているviewDidLoad()メソッドで、もう一つが今日説明するdidReceiveMemoryWarning()メソッドです。
iOSシステムでメモリー管理は非常に重要なので限りある資源(メモリー)を有効に使うためのメソッドです。システムが設定してあるメモリー残量を下回った時に呼ばれるメソッドになります。
2つのViewControllerの切り替えをするシステムですが、コードの実行中に2つのViewControllerが存在してしまうタイミングあります。そういう場合でメモリが少なくければ、使っていないViewControllerを消してしまいます。
override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() if blueViewController != nil && blueViewController?.view.superview == nil { blueViewController = nil } if orangeViewController != nil && orangeViewController?.view.superview == nil { orangeViewController = nil } }
このコードの説明はいらないぐらい分かり易いです。ビューの無いビューコントローラーがあれば必要無いということです。
今日はここまで。