详解Xcode与Interface Builder配合入门
详解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,即他的属性及实现。