UI-Xib

作者: 居敬持志 | 来源:发表于2016-02-15 17:51 被阅读59次

    Xib的加载


    • 方法1
    NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"xib文件名" owner:nil options:nil]
    
    `NSBundle mainBundle`主资源包,`loadNibNamed` xib在生成资源包后会成为Nib文件
    
    • 方法2
    UINib *nib = [UINib nibWithNibName:@"xib文件名" bundle:nil];
    NSArray *views = [nib instantiateWithOwner:nil options:nil];
    

    自定义控件view的步骤


    • 新建自定义控件类


    • 修改xib中view的类名


    • 封装xib的加载过程

    @interface XMGShopView : UIView
    + (instancetype)shopview;
    @end
    
    --------------------------
    
    @interface XMGShopView : UIView
    + (instancetype)shopview {
        return [[[NSBundle mainBundle] loadNidNamed:@"XMGShopView" owner:nil options:nil] lastObject];
    }
    @end
    
    • 增加模型属性,在模型属性set方法中设置数据到子控件上

    注意


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

    相关文章

      网友评论

          本文标题:UI-Xib

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