window-based是一个比较简单的模板。这个模板仅提供一个窗口和一个应用程序委托,没有视图,没有控制器。这个模板是很少用于创建应用程序的,今天之所以用这个模板是为了更好的了解多视图的构建过程
首先创建一个基于window-based的应用程序。我们取名为MyClock(因为我现在要做个和clock相关的demo,你可以起你喜欢的名字的应用程序)。创建好之后可以看到两个用于实现应用程序委托的文件MyClockAppDelegate.h,MyClockAppDelegate.cpp和nib文件MainWindows.xib,MyClock-info.plist
创建好之后就要开始添加我们自己的视图和控制器类了:
1。创建控制器类,我们可以选择Cocoa Touch类模板的UIViewController subclass 在下面会看到With XIB for user interface 选中此复选框(如果你想自己创建nib的话也可以不选择此复选框,自己去创建)然后取名为MyClockViewController
2. 修改应用程序委托 在MyClockAppDelegate.h中加入MyClockViewController *clockViewController;然后设置属性@property (nonatomic,retain) IBOutlet MyClockViewController *clockViewController; 在MyClockAppDelegate.cpp中加入@synthesizeclockViewController; 在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions函数中加入self.window.rootViewController = self.clockViewController; 为什么要在这个函数中加呢?因为这是程序加载视图时调用的第一个函数。在此函数中加入我们自己的视图 好了。记得在dealloc函数中将clockViewController relese掉下面就要修改视图了
3。打开MainWindows.xib此时应该有4个按钮 File's Ower, First Responder, My Clock App Delegate Window 现在拖一个View Controller 控件到MainWindows.xib中然后单击 view Controller 按下 command+4键打开身份检查器将class改为我们自己的控制器类MyClockViewController在选中My Clock App Delegate按下 command+2键 将clockViewController与我们刚创建的控制器类关联起来
好了,大公告成了,你可以在自己添加的视图中添加任何控件然后运行程序就可以显示了