2010-12-20 109 views
4

由于IB文件相当复杂,因此我有一个自定义视图:(RotatorView.xib/.h/.m)。 我想将RotatorView作为子视图添加到视图控制器。我可以通过编程方式使用:如何将视图XIB作为子视图加载到视图控制器中XIB

NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"RotatorView" 
               owner:self options:nil]; 

但我宁愿不这样做。如果我可以将RotatorView添加到Interface Builder中View Controller的画布上,那对我的设计会更好。这样我可以使用IB来管理每个RotatorView实例的属性,而不是在每个类中以编程方式设置属性。有没有一种方法可以将我的自定义视图与XIB添加到父视图控制器?我必须建立一个IB插件才能做到这一点吗?

回答

4

您可以在IB中的画布上添加UIView控件,并更改其类名以匹配您的自定义视图类名称。 尽管这样可以使您无法通过编程方式调用loadNibNamed方法,但是您将无法直接从IB设置自定义属性。

这样做的唯一解决方案是构建一个IB plugin,但不幸的是,由于无法制作Cocoa Touch框架,因此似乎无法制作Cocoa Touch IB插件。

+0

我做了一些更多的研究并得出了相同的结论。这似乎是一个奇怪的遗漏,虽然。我可以使用IB构建自定义视图,但无法将该自定义视图嵌入到另一个视图控制器XIB中。 – Steve 2010-12-21 16:31:46

相关问题