3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

MacOS X アプリケーションのライフサイクル

Last updated at Posted at 2018-09-17

#開発環境

  • MacOSX HighSierra(10.13.6)
  • Xcode Version 9.4.1 (9F2000)
  • Swift4.2
  • Cocoa

#アプリケーションのライフサイクルを知る
アプリケーションのライフサイクルを知らないと開発できない。
Android開発やiPhone開発のライフサイクルメソッドと同じ考えで良い。
プロジェクト作成時に自動生成されているメソッドの説明をする。

#AppDelegate.swift
AppDelegate.swiftはアプリケーションのライフサイクルメソッドがある。
プロジェクト生成時に以下の2つのライフサイクルメソッドが自動生成される。
他のタイミングで処理したい場合、他のライフサイクルメソッドを利用すること。
詳細はリファレンスで確認できる。
リファレンス : UIApplication Delegate

#ViewController.swift
ViewController.swiftはViewのライフサイクルメソッドがある。
Main.storyboardにあるView Controllerのこと。
基本的にアプリケーションのウインドウを開いたり閉じたりすると一緒にView Controllerも生成と終了する。
Viewの生成と終了を繰り返せば、その度にライフサイクルメソッドが呼び出される。
詳細はリファレンスで確認できる。
リファレンス : UIViewController

  • viewDidLoad()
    View生成後に呼び出される。
    リファレンス : viewDidLoad()

  • representedObject
    View間のデータ(プロパティ、パラメータ)の受渡しをするときに利用する。
    自動生成コメントより、「Update the view, if already loaded.(既にロードされている場合は、ビューを更新します。)」
    リファレンス : representedObject

#他のライフサイクル処理を作成
既存のライフサイクルを参考にする。
ViewController.swiftにあるviewDidLoad()みたいにsuper.viewDidLoad()を記述すること。
つまり、親クラスの物を呼び出す。super.xxx()の記述を忘れてはいけない。

ViewController.swift
override func viewDidLoad() {
        super.viewDidLoad()    // ←これ

        // Do any additional setup after loading the view.
    }

以上、フォローといいねをお願いします。

3
3
0

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
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?