看看Apple怎麼描述nib檔:
製作OS X及iOS的應用程式時,nib檔扮演著相當重要的角色。你可以透過Xcode用圖形的方式去建立及調整使用者介面,取代撰寫程式的方法。因為你可以立即看到改變的結果,所以能很快的測試不同版型及設定。並能不改寫任一行程式碼,即可修改大部份的使用者介面。
對於採用AppKit或UIKit製作的應用程式,nib檔有額外的重要性。這兩個架構都支援使用nib檔來對windows, views及controls排版,並可以與程式碼整合。Xcode協助你連結使用者介面控制與迴饋的部份。這樣的整合有效減少nib檔讀入後的設定步驟,並且使你未來可簡單的改變程式碼與使用者介面的關係。
from Resource Programming Guide, Apple
以下簡單介紹使用nib檔來加入一個上傳指示元件:
CustomView.xib
這個nib檔裡面很簡單,有一個UIView,將它的class設為CustomView.h。UIView下面包含了一個UIActivityIndicatorView及UILabel(待會用IBOutlet將它們連結起來)。CustomView.xib
CustomView.h / CustomView.m
很簡單,就只有兩個IBOutlet,以及一個define marco。使用Xcode將這兩個IBOutlet與CustomView.xib裡面拉好的版面連結起來即可。
ViewController.h / ViewController.m
將CustomView.xib載入。
13行 在 viewDidAppear: 的時候將nib檔載入。
17行 使用的方法是 NSBundle 的 loadNibNamed:owner:options:來載入。
20行 這個forin fast enumeration用來找出CustomView元件。
26行 將CustomView加入目前的view當中。
27行 讓UIActivityIndicatorView轉起來
28行 UILabel顯示為「Uploading 2 photo(s)...」
若一切沒錯,即可發現一個轉動的UIActivityIndicatorView與「Uploading 2 photo(s)...」出現在螢幕上。