#思ったこと・気づいたことを書きなぐる
-
Viewの階層を調べる
→ view.performSelector("recursiveDescription") -
ViewのAutoLayoutを調べる
→ 垂直方向:constraintsAffectingLayoutForAxis(.Vertical)
→ 水平方向:constraintsAffectingLayoutForAxis(.Horizental) -
tryがあるのにcatchが無いのはなぜ?
→「do { try xxx }catch」が基本構文
「try!」で記載した場合はエラーが起こらないものという明示的な表記になる -
[weak self]と[unowned self]について
→ ボタンタップなどの同期処理にはunowned
→ クロージャーやハンドラーなど非同期処理の場合はweakにする
┗ 非同期処理内でselfを参照したい場合は以下のようにunwrapしておく
guard let `self` = self else { return }
-
タブ切り替えなどで
addChildViewController
をした場合
→ そのあと必ずdidMoveToParentViewController
の記載を忘れないようにする