美文网首页
Storyboard加载控制器、xib加载控制器View

Storyboard加载控制器、xib加载控制器View

作者: 丹丹十个胆小鬼 | 来源:发表于2018-12-20 17:07 被阅读0次

    1、通过Storyboard加载控制器

      self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
        // 加载指定的Storyboard
        UIStoryboard *vcSb = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
        
        // 加载箭头指向的控制器
        //    ViewController *vc = [vcSb instantiateInitialViewController];
        
        // 加载指定表示ID的控制器
        ViewController *vc = [vcSb instantiateViewControllerWithIdentifier:@"yellowVCID"];
        
        
        self.window.rootViewController = vc;
        [self.window makeKeyAndVisible];
    
    1.png

    2、通过Xib加载控制器的View

    通过Xib加载控制器的View步骤:

    • 1.创建Xib文件
    • 2.告诉Xib描述哪一个控制器的View--->绑定类
    • 3.告诉控制器,Xib当中哪一个View去描述控制器的View---->连线
        self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
        //通过Xib加载控制器的View
        //1.创建Xib文件
        //2.告诉Xib描述哪一个控制器的View,->绑定类
        //3.告诉控制器,Xib当中哪一个View去描述控制器的View.->连线
        
        
        /***
         initWithNibName:
         1.指定名称,会加载指定名称的xib.
         2.如果name指定的为nil.
         先去加载有没有相同名称的xib,如果有,就去加载.(FLViewController.xib)
         如果没有相同名称,还会去找相同名称,去掉Controller(FLView.xib)
         3.如果还没有,就不使用xib来描述控制器的view.去创建一个View.
         
         */
        //  init方法默认会调用initWithNibName:
        
        FLViewController *vc = [[FLViewController alloc] initWithNibName:@"Test" bundle:nil];
        
        self.window.rootViewController = vc;
        [self.window makeKeyAndVisible];
    
    2.png
    • initWithNibName:(init方法默认会调用initWithNibName:)
      1.指定名称,会加载指定名称的xib.
      2.如果name指定的为nil.
      先去加载有没有相同名称的xib,如果有,就去加载.(FLViewController.xib)
      如果没有相同名称,还会去找相同名称,去掉Controller(FLView.xib)
      3.如果还没有,就不使用xib来描述控制器的view.去创建一个View.

    相关文章

      网友评论

          本文标题:Storyboard加载控制器、xib加载控制器View

          本文链接:https://www.haomeiwen.com/subject/jyxskqtx.html