loadView小结

1.loadView作用:

  • 创建控制器的View,第一次创建View的时候调用

// 创建view的懒加载方法

-(UIView *)view{
      if (view == nil){
          [self loadView];
          [self viewDidLoad];
          // 其他。。。。
      }
      return view;
}

在调用loadView时:

-(void)loadView{
     [super loadView];
}

其中:[super loadView]; 系统做了如下一些事情:

  • 1.先判断storyBoard,是否从storyBoard里面加载View.(如果不是)
  • 2.再判断是否从Xib里面加载View.(如果不是)
  • 3.创建一个空白的View.(疑问?什么是空白View)

** 2.loadView一般使用情况 **
需求:程序一起动显示一张图片,或者加载一个webView.
解释:因为我们如果在viewDidLoad里面添加一张图片,或者添加webView.则系统总共创建了self.view和(你要创建东西)两个对象。如果是在loadView里面创建,则只创建了(你要创建东西)一个对象。

-(void)loadView{ // 不要调用[super loadView]
     UIImageView *imageV = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon0"]];
     self.view = imageV;
}

3.什么时候回触发loadView方法
只要调用self.view就会触发

4.解释什么是空白View
影响View显示的有两种:
1、self.view.alpha = 0; // 为零时,看不到view
2、self.view.backgroundColor = [UIColor clearColor];

那到底是那种情况呢,通过测试,是第二种情况。

(注意:当alpha=0时,该view不能响应事件。当改变父类的alpha时,子类也会受影响。)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 7、不使用IB是,下面这样做有什么问题? 6、请说说Layer和View的关系,以及你是如何使用它们的。 1.首先...
    AlanGe阅读 704评论 0 1
  • 27、ViewController的didReceiveMemoryWarning是在什么时候调用的?默认的操作是...
    烟雨平生花飞舞阅读 612评论 0 1
  • 1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现cl...
    以德扶人阅读 2,426评论 2 50
  • UI viewcontroller的一些方法的说明viewDidLoad,viewWillDisappear, v...
    b485c88ab697阅读 3,582评论 0 22
  • 搜罗国外 40 个优质在线学习好网站,明天的自己会感谢今天的努力。 ​想要每天都学点新东西来让自己变得更出色吗? ...
    游城十代2dai阅读 255评论 0 2