zoukankan      html  css  js  c++  java
  • LoadView面试时会经常用到

        

    - (void)viewDidLoad {

        [super viewDidLoad];

        //请解释死循环

        //    self.view = nil;

        //    NSLog(@"%@",self.view);

        

    }

    - (UIView *)view{

        //如果view存在。则返回

        if ([self valueForKey:@"_view"]) {

            return [self valueForKey:@"_view"];

        }

        //如果不存在,先调用loadView再调用viewDidLoad

        [self loadView];

        [self viewDidLoad];

        return [self valueForKey:@"_view"];

    }

    - (void)loadView{

    //判断xib是否存在

        NSFileManager*manage =[NSFileManager defaultManager];

        NSString *path =[[[NSBundle mainBundle]bundlePath]stringByAppendingFormat:@"/%@.nib",NSStringFromClass([self class])];

        if ([manage fileExistsAtPath:path]) {

            //通过加载xib文件加载视图

            [[NSBundle mainBundle]loadNibNamed:NSStringFromClass([self class]) owner:self options:nil];

            return;

        }

         //如果不存在xib文件,则初始化一个白的视图

        UIView *v = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];

        

        v.backgroundColor = [UIColor redColor];

        

        [self setView:v]; 

    }

    在TextViewController中得nib中画两个view;是并列的view

    在viewController中push一个页面。

  • 相关阅读:
    .Net 多线程小结
    VIM 入门操作
    C语言中的数据
    对scanf和printf的研究!!
    C语言常用的编程规范
    ORACLE GOLDEN GATE oracle同步数据至kafka
    mysql5.7关于使用到OR是否会用到索引并提高查询效率的探讨
    sysbench安装
    percona数据库监控工具的安装部署
    redhat6 快速部署percona
  • 原文地址:https://www.cnblogs.com/yxt9322yxt/p/4748849.html
Copyright © 2011-2022 走看看