iOS xib使用时注意

1.xib的通常的使用步骤

1.1 新建1个类,用来描述这个xib (假定继承自UIView,且类名是DIYView)

1.2 新建1个xib,文件名也是DIYView,往里面拖一个UIView,设置UIView的属性-Class为DIYView

1.3 往xib里拖1个长按的手势识别,鼠标右键刚刚拖进来的UIView,gesture Recognizer和刚才拖进来的长按手势识别做连线

1.4 DIYView.h 提供一个方法类方法: + (instancetype)diyView;

  DIYView.m 实现diyView:

    + (instancetype)diyView

    {

        return [[[NSBundle mainBundle] loadNibNamed:@"DIYView" owner:nil options:nil] lastObject];

    }

1.5 在控制器中,新增这个用xib定义的view

  DIYView *diy = [DIYView diyView];

  [self.view addsubView:diy];

1.6 最后运行程序,程序崩溃

1.7 分析报错原因:

[DIYView diyView] 返回的是手势,不是预期的uiview.因为最后添加的是长按手势.

1.8 总结:

使用xib时需要注意lastObject或者firstObject返回的到底是什么

1.9 规避方法

可以通过打印数组看看数组中元素的排列顺序

NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"DIYView" owner:nil options:nil]

NSLog(@"%@",array);

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。