詳解Xcode與Interface Builder配合入門是本文要介紹的內容,Apple IOS製作UI最常用的兩種方法,一是用Xcode配合Interface Builder,一是直接用Xcode,相信大多數人會選擇前者,選擇後者的應該是“代碼控”,呵呵。
一、Xcode與Interface Builder配合入門介紹
Xcode中建立項目時,預設與Interface Builder做串連,用其來製作UI。Apple官方的介紹如下:
- Keep your Xcode project open while editing your nib files.
- Whenever you want to create a new class, or add an outlet or action to an existing class, do it in Xcode.
- To set the class of an object, simply type its name in the identity pane of the inspector window.
官方說了,在Xcode中建立類,然後在IB中做聯結。實際操作中,你也許會問,在Xcode中建立類,建立到什麼程度???
答案是,你只需在.h檔案中定義對象,然後加上IBoutlet屬性;在.m檔案中加入屬性的實現;不需要再用“alloc”建立對象如用"alloc"建立對象,代碼中給對象的賦值會無效,哈);然後在代碼中給對象賦值,編譯出來的程式中才會顯示你想要賦值,而不是IB中的初始值;最後在 Xcode和IB之間聯結對象,在IB中修改對象屬性,很直觀,很方便。對於action,在視圖控制器程式中加入你的方法,然後在IB做聯結即可。
ok,我們在主代理程式中定義並載入視窗、視圖控制器、導航控制器等;在視圖控制器程式中定義載入視圖等,有一點要注意,要在viewDidLoad方法中載入視圖,loadView是“代碼控”載入視圖的地方。
二、直接用Xcode製作UI
前面說了,Xcode中建立項目時,預設與Interface Builder做串連,所以為了避免衝突,在直接用Xcode製作UI時,你需要斷絕與Interface Builder的一切聯絡,方法如下:
1、刪掉Group&File中所有*.xib檔案預設在Resources檔案夾中);
2、刪掉*-info.plist中“Main nib file base name”屬性;
3、將main程式中的
- int retVal = UIApplicationMain(argc, argv, nil, nil);
修改為
int retVal = UIApplicationMain(argc, argv, nil, @“你的主代理程式名無尾碼)”);
4、(可選)刪掉IBoutlet的 @property 和 @synthesize,即他的屬性及實現。
三、本文只是強調了Xcode與Interface Builder配合使用時的幾個關鍵注意點,全面的介紹,還請參考官方文檔及有關參考書。
小結:詳解Xcode與Interface Builder配合入門的內容介紹完了,希望本文對你有所協助!