iPhone IOS5 Storyboard,如何使用自定义.xib文件加载UIViewController?

时间:2012-01-02 22:07:11

标签: iphone objective-c ios5 interface-builder storyboard

我的旧iOS4项目中有一些UIViewControllers,他们使用的是.xib,在界面构建器中创建。

我为iOS5打造的新项目使用了故事板。

我正在尝试将UIViewController添加到故事板,但让它使用我已经拥有的自定义XIB 。我在indentity检查器中设置了控制器的标识(在界面构建器中),但我不确定如何要求该控制器加载自定义.xib。

感谢任何帮助!

PS。到目前为止,我能够通过为故事板目的创建一个“包装器”类来解决这个问题,并让该类具有另一个UIViewController。但这有点打败了故事板的全部内容。

3 个答案:

答案 0 :(得分:19)

您可以将xib的内容复制到storyboard中,然后使用:

进行实例化
- (id)instantiateViewControllerWithIdentifier:(NSString *)identifier
在设置标识符后

。如果你需要故事板的实例,你可以这样得到它:

[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

答案 1 :(得分:1)

Mike K的回答是错误的。

虽然混合XIB和Storyboard并不能解决Alex的问题,但 很可能在同一个项目中完成。

请参阅:https://stackoverflow.com/a/8516479/1309238 re:加载第二个故事板。

我不确定是否包含"主要故事板"如果您计划执行此操作,建议您在目标摘要中使用,但如果您已经开始加载XIB而不是故事板,则可以修改上面链接的代码以在XIB之后加载故事板。

我不确定你是否可以从XIB跳到故事板的中间,这可能是迈克的意思。

答案 2 :(得分:-13)

你不能在你的项目中混用xib和故事板 - 这是另一个,我担心。