我在这个网站和其他网站上尝试了其他几个例子,但是对于我的生活,我无法让它发挥作用。
我有一个NIB文件,它是“ViewController2”类的一部分。我需要在我的“ViewController1”类中使用此NIB文件中的一些视图。
每次打电话
[[NSBundle mainBundle]loadNibNamed:@"ViewController2" owner:self options:nil];
它导致崩溃,说我的UIButton
之一不符合KVC
,但我已正确链接所有按钮和插座,但无济于事。
任何帮助都将非常感谢!提前谢谢!
答案 0 :(得分:0)
比NSBundle
至少快3倍:
ViewController2 *_viewController2 = [[[UINib nibWithNibName:@"ViewController2" bundle:nil] instantiateWithOwner:nil options:nil] objectAtIndex:0];
它将加载nib
文件,它将创建ViewController2
类的新实例。
NB :如果您想为ViewController2
使用nib
类的现有实例,则需要将该实例设置为{{1} }}。
答案 1 :(得分:0)
当您加载笔尖并将owner:
属性设置为self
时,iOS会尝试使用KVC连接插座。如果你没有一个UBSutton,其keyPath与你当前所在类中的xib文件中的一个匹配,那么你将会崩溃。您需要将owner:
设置为nil
。