スマホHack!

iPhoneアプリ開発の初心者が知っておきたいnibファイルの基本

Xcode

nibは『ニブ』と読みます。
swiftで開発を初めて一番最初に見るソースコードがViewController.swiftだと思います。
そのソースのコメントに出てくるのがnib

Do any additional setup after loading the view, typically from a nib.

iPhoneアプリ開発の初心者にとってはさっぱりわからないので、nibファイルについてまとめてみました。

概要

nibファイルとは、簡単にいってしまうとボタンなどのUI要素の描画情報が記述されたファイルのことです。

iOSアプリの開発作業は、「プログラムコードの記述」と「UIの作成」の二つに大別できます。通常は「UIの作成」はInterface Builder(IB)※を使用してUIを作成する作業を行います。このIBで作成されたUI要素の描画情報がnibファイルに格納されます。

※以前はXcodeとは独立したアプリでしたが、現在ではXCodeに統合されています

名前の由来

拡張子は.nibです。この拡張子が呼び名の由来です。
nibはNeXTStep Interface Builderの頭文字からとったものです。

ストーリーボードファイルとの関係

UI要素の描画情報はストーリーボードファイル(Storybordファイル)に格納されているのでは?と思うかもしれません。実は、ストーリーボードファイル(Storybordファイル)の正体は、複数のnibファイルを一つにまとめたものです。

ViewControllerとの関係

アプリ(ViewController)が起動されるときに、nibファイルからUI要素の描画情報が読み込まれ、インスタンス化され、起動直後の画面が描画されます。

ViewController.swiftviewDidLoad()メソッドには、

Do any additional setup after loading the view, typically from a nib.

とコメントが記載されています。

「ボタンなどのUI要素がnibファイルからロードされ、インスタンス化されたらあとは
 あなたが設定等を自由に記述してくださいね」、

ということです。

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

viewDidLoad()の中でプログラムを記述することによって、UI要素の色を変えたり、ボタンを追加したりすることができるわけですね。

facebooktwittergoogle_plusredditpinterestlinkedinmail

Comments are closed.