【发布时间】:2015-05-15 03:45:58
【问题描述】:
最常用的初始化方法是
UIView *rootView = [[[NSBundle mainBundle] loadNibNamed:@"MyRootView" owner:self options:nil] objectAtIndex:0];
在我的例子中,self 是指视图控制器,但我必须将所有者设置为视图本身,因为 .m 和 .xib 之间有很多出口,如何处理这种情况?
【问题讨论】:
-
没有正确解释您的问题。
-
问题是在上面的 loadNibNamed 中,我必须将 uiview 的 xib 的文件所有者设置为视图控制器(因为我在视图控制器中使用此视图),这导致许多插座连接崩溃(因为插座是在自定义视图类中定义的,而不是视图控制器类)。
-
您需要将 uiview 的 xib 的文件所有者设置为视图类(而不是视图控制器)。
-
并且在代码集中所有者为 nil?
-
创建自定义 UIView.. 在情节提要中为其设置标识符。并将此类分配给您的 rootViewControllers 视图。并将“MyRootView”设置为您的 RootViewController 作为情节提要标识符。