美文网首页
XIB自定义View

XIB自定义View

作者: coder_hong | 来源:发表于2016-05-22 21:59 被阅读210次

    Xib和storyboard对比

    • 共同点:

      • 都用来描述软件界面
      • 都用InterfaceBuilder工具来编辑
      • 本质都是转换成代码去创建控件
    • 不同点

      • Xib是轻量级的,用来描述局部的UI界面
      • Storyboard是重量级的,用来描述整个软件的多个界面,并且能展示多个界面之间的跳转关系

    Xib的加载

    
    // 1.xib肯定是在资源库中 所以使用mainBundle获取
    方法1
    NSArray*views = [[NSBundlemainBundle]loadNibNamed:@"xib文件名"owner:niloptions:nil]
    
    方法2
    UINib*nib = [UINibnibWithNibName:@"xib文件名"bundle:nil];
    //3.确定你需要的哪个空间在数组的哪个位置
    NSArray*views = [nib instantiateWithOwner:niloptions:nil];
    
    Snip20160522_6.png

    注意点:

    一个控件的创建方式有两种

    方式一
    • 通过代码创建
      • -初始化时一定会调用initWithFrame:方法
    方式二
    • 通过XIB描述
      • 初始化时不会调用initWithFrame:方法,只会调用initWithCoder:方法
      • 初始化完毕后会调用awakeFromNib方法 initWithCoder
    • 有时候希望在控件初始化时做一些初始化操作,比如添加子控件、设置基本属性
      - 这时需要根据控件的创建方式,来选择在initWithFrame:、initWithCoder:、awakeFromNib的哪个方法中操作

    相关文章

      网友评论

          本文标题:XIB自定义View

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