详解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配合入门的内容介绍完了,希望本文对你有所帮助!