码迷,mamicode.com
首页 > 其他好文 > 详细

控制器创建方式

时间:2015-04-12 22:22:44      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

三种创建方式:

1.通过代码创建(个人建议:虽然代码创建繁琐,但是还是觉得代码才是王道)

2.通过xib创建:

   优点:能够用拖控件的方式来描述一个View里面的情况

   缺点:和storyboard相比需要在File‘s Owner的Class属性中设置所属自定义控制器,并且要设置控制器所属View(连线)

3.通过storyboard创建

   优点:能够用拖控件的方式来描述一个View里面的情况,如果设置了storyboard为Mainstoryboard的话,就可以免去代码创建Window等的步骤,系统             全会自动生成

 1 // 代码创建方式
 2 
 3 #import "LMPAppDelegate.h"
 4 #import "LMPOneViewController.h"
 5 
 6 @implementation LMPAppDelegate
 7 
 8 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 9 {
10     // 创建窗口
11     self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
12     // 设置窗口颜色为白色
13     self.window.backgroundColor = [UIColor whiteColor];
14     // 设置窗口根控制器
15     self.window.rootViewController  = [[LMPOneViewController alloc] init];
16     
17     // 显示窗口
18     [self.window makeKeyAndVisible];
19     
20     return YES;
21 }
 1 // Storyboard创建方式
 2 
 3 #import "LMPAppDelegate.h"
 4 #import "LMPOneViewController.h"
 5 
 6 @implementation LMPAppDelegate
 7 
 8 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 9 {
10     // 创建窗口
11     self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
12     // 设置窗口颜色为白色
13     self.window.backgroundColor = [UIColor whiteColor];
14     
15     // 加载Storyboard,@"One"为Storyboard文件名,nil默认为[NSBundle mainBundle]
16     UIStoryboard *one = [UIStoryboard storyboardWithName:@"One" bundle:nil];
17     
18     // 获得Storyboard的箭头所指的控制器
19 //    UIViewController *vc = [one instantiateInitialViewController];
20     
21     // 获得Storyboard中标示符为@"Other"对应的控制器
注意:我所用的控制器是系统自带的控制器,最好还是自己定义一个控制器
22 UIViewController *vc = [one instantiateViewControllerWithIdentifier:@"Other"]; 23 24 // 设置窗口根控制器 25 self.window.rootViewController = vc; 26 27 // 显示窗口 28 [self.window makeKeyAndVisible]; 29 30 return YES; 31 }

 

 1 // xib创建方式
 2 
 3 #import "LMPAppDelegate.h"
 4 #import "LMPOneViewController.h"
 5 
 6 @implementation LMPAppDelegate
 7 
 8 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 9 {
10     // 创建窗口
11     self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
12     // 设置窗口颜色为白色
13     self.window.backgroundColor = [UIColor whiteColor];
14     
15     // 加载xib文件,注意xib文件中Class设置的什么类型的控制器返回的就是什么类型的控制器
16     // 主动加载一个xib文件
17     LMPOneViewController *vc = [[LMPOneViewController alloc] initWithNibName:@"Two" bundle:nil];
18     
19     /*
20        LMPOneViewController *vc = [[LMPOneViewController alloc] init];
21        规则先后:
22                默认最先加载文件名为@“LMPOneView”的xib,没有就找名字为@“LMPOneViewController”的xib,
23                如果也没有系统会自动生成一个空白的View
24      
25        注意:如果更改了没有效果是因为你没有重新卸载模拟器的软件,并且最好在xcode中clean一下
26      
27      */
28     
29     // 设置窗口根控制器
30     self.window.rootViewController = vc;
31    
32     // 显示窗口
33     [self.window makeKeyAndVisible];
34     
35     return YES;
36 }

 

控制器创建方式

标签:

原文地址:http://www.cnblogs.com/pocket-mood/p/4420775.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!