欢迎来到天天文库
浏览记录
ID:46363620
大小:2.06 MB
页数:46页
时间:2019-11-23
《移动互联网应用开发之iOS》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、移动互联网应用开发之iOS蔡志平多视图应用程序经典关系图AppViewViewViewControllerViewControllerViewController多视图应用程序ViewSwitcher应用程序:XCODE多视图应用程序构建ViewSwitcher打开XCode,从File菜单中选择NewProject…,或者打开模板窗口后,选择Window-BasedApplication,一定要使UsesCoreForStorage复选框处于未选中状态,输入项目名称ViewSwitcher。多视图应用程序模
2、板选择多视图应用程序这个模板仅提供一个窗口和一个应用程序委托,没有视图,也没有控制器。多视图应用程序创建视图控制器和nib文件单击Groups&Files窗格中的Classes文件夹,然后按下⌘N或从File菜单中选择NewFile…多视图应用程序从左侧窗格中选择CocoaTouchClasses,可以看到用于常用的CocoaTouch类的模板。选择UIViewControllersubclass.在右侧窗格中,可以看到一个标有WithXIBforuserinterface的复选框。如果该复选框处于被选中状态
3、,则单击它以取消选择。单击Next,输入名称SwitchViewController.m确保选中了Alsocreate“SwitchViewController.h”,然后单击Finish.多视图应用程序重复相同的步骤两次,创建BlueViewController.m和YellowViewController.m,确保也为这两个控制器创建了相应的头文件。这两个视图将由SwitchViewController进行切换。创建另外两个nib文件,分别对应刚才创建的两个内容视图。要创建nib文件,就要单击Group&
4、Files窗格中的Resource文件夹,以便在正确的位置创建它们。按下⌘N或从File菜单中选择NewFile…,出现帮助窗口之后,在左侧窗格中的iPhoneOS标题下选择UserInterface多视图应用程序选择ViewXIB模板的图标,这将创建一个带有内容视图的nib,然后单击Next按钮。当提示输入文件名时,输入BlueView.xib.重复步骤,创建另一个nib文件YellowView.xib。多视图应用程序修改应用程序委托:多视图应用程序的第一站是应用程序委托。单击Groups&Files窗格中
5、的View_SwitchAppDelegate.h文件,并对文件进行如下修改:#import@classSwitchViewController;@interfaceView_SwitcherAppDelegate:NSObject{IBOutletUIWindow*window;IBOutletSwitchViewController*switchViewController;}@property(nonatomic,retain)
6、UIWindow*window;@property(nonatomic,retain)SwitchViewController*switchViewController;@end多视图应用程序刚才输入的IBOutlet声明的是一个输出口,它指向应用程序的根控制器。这个输出口必不可少,因为我们将编写代码来将根控制器的视图添加应用程序的主窗口。修改View_SwitherAppDelegate.m添加代码将跟控制器的视图添加到应用程序的主窗口:多视图应用程序修改代码的实现文件@synthesizewindow;@
7、synthesizeswitchViewController;-(void)applicationDidFinishLaunching:(UIApplication*)application{//Overridepointforcustomizationafterapplaunch[windowaddSubview:switchViewController.view];[windowmakeKeyAndVisible];}-(void)dealloc{[windowrelease];[switchViewCo
8、ntrollerrelease];[superdealloc];}多视图应用程序修改SwitchViewController.h由于我们将在MainWindow.xib中添加一个SwitchViewController实例,我们需要一个操作方法实现视图之间的切换,我们不需要任何输出口,但是需要额外的两个指针,分别指向将要交换的两个视图控制器。这些指针不需要输出口,因为我们将在代码中而不是在nib中创
此文档下载收益归作者所有