LoginSignup
118
117

More than 5 years have passed since last update.

iPhoneアプリのライフサイクル

Last updated at Posted at 2014-12-27

修正(2014/12/30)

  • shouldperformseguewithidentifier はDeprecatedらしいので、削除しました
    (shouldperformseguewithidentifierの中でSegueで遷移するかどうかを判定するのではなく、あらかじめ遷移してよいかどうかを判定した上で、prepareForSegueを実行せよということなんでしょうね)

  • canPerformUnwindSegueAction を追加

  • 画面間を移動した場合のApper系の実行順がおかしかったので訂正

  • その他、ちょこちょこと補記

目的

AppDelagate、ViewController、Segue、全部まとめたものがなさそうだったのでまとめてみました。

ライフサイクル

キャプチャ3.PNG

画面遷移時の遷移元、遷移先の実行順(タブ画面の場合)

1:-[FirstViewController viewDidLoad]
1:-[FirstViewController viewWillAppear:]
1:-[FirstViewController viewDidAppear:]

2:-[SecondViewController viewDidLoad]
2:-[SecondViewController viewWillAppear:]
1:-[FirstViewController viewWillDisappear:]
1:-[FirstViewController viewDidDisappear:]
2:-[SecondViewController viewDidAppear:]

1:-[FirstViewController viewWillAppear:]
2:-[SecondViewController viewWillDisappear:]
2:-[SecondViewController viewDidDisappear:]
1:-[FirstViewController viewDidAppear:]

参考資料

アプリの状態とマルチタスキング
iOS のイベント駆動をライフサイクルイベントとユーザアクションイベントにわけて理解する
iOSのライフサイクル

118
117
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
118
117