IOS第12天(1,UIViewController控制器的创建的 三种方式,和第一个view创建)

*************HMAppDelegate.m中

@implementation HMAppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];
    
    //storyboard
   [self  vcFromStoryboard];
    
    //代码
//    HMOneViewController *vc = [[HMOneViewController alloc] init];
//    vc.view.backgroundColor = [UIColor grayColor];
//
//    self.window.rootViewController = vc;
   
    //xib
    HMThreeViewController *threeVc = [[HMThreeViewController alloc] initWithNibName:@"Three168" bundle:nil];
    self.window.rootViewController = threeVc;
    [self.window makeKeyAndVisible];
    return YES;
}

//来自storyboard控制器
-(void)vcFromStoryboard{
    //设置UIWindow根控制器
    
    //第一方法 从storyboard获取控制器
    //1.1获取storyboard对象
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Test" bundle:nil];
    
    //1.2获取storyboard的第一个控制器(箭头所指的控制器)
    //UIViewController *vc = [storyboard instantiateInitialViewController];
    
    //获取storyborad指定id的控制器
    UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"SecordVC"];
    
    NSLog(@"%@",vc);
    
    //1.3设置窗口的根控制器
    self.window.rootViewController = vc;
}


***第一个view的创建

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor purpleColor];
    
    //HMOneViewController *oneVc = [[HMOneViewController alloc] initWithNibName:@"OneView168" bundle:nil];
    
    //HMOneViewController *oneVc = [[HMOneViewController alloc] initWithNibName:@"HMOneView" bundle:nil];
    
    //1.如果没有指定xib ,默认会查找与控制器名Controller以前的文字的xib(HMOneView.xib)
    //2.如果没有HMOneView.xib 接着就找与控制器同名xib(HMOneViewController.xib)
    //3.如果没有找与控制器同名的xib,自己创建一个空白view
    //   UIView *view = [UIView allloc] init]; oneVc.view = view
    
    HMOneViewController *oneVc = [[HMOneViewController alloc] init];
    self.window.rootViewController = oneVc;
    NSLog(@"aaaaaaaaaa");
    [self.window makeKeyAndVisible];
    NSLog(@"bbbbbbbbbb");
    
    //viewDidLoad
    //aaaaa
    //bbbbb
    
    //aaaaa
    //viewDidLoad
    //bbbbb
    
    
   
    return YES;
}

 

posted @ 2015-08-24 18:11  iso  阅读(477)  评论(0编辑  收藏  举报