我正在处理UISplitViewController周围的奇怪错误
我创建了一个库,以处理ViewControllers的表示形式并尽可能地重用代码。在这段代码中,我使用情节提要ID实例化了ViewController,并使用SplitViewController切换了一个ViewController。
尽管它在iOS 8中可以正常工作,但在iOS 7中因此错误而崩溃。
Storyboard (<UIStoryboard: 0x7f94bb52ccd0>) doesn't contain a view controller with identifier 'MySplitViewControllerIdentifier'
发生这种情况的代码是这样的
+(UIViewController *) instantiateStoryboard:(UIStoryboard *) storyboard
withViewIdentifier:(NSString *) identifier
{
@try {
if ([identifier isEqualToString:@""] || identifier == nil) {
return [storyboard instantiateInitialViewController];
}
else {
//HERE IT CRASHES !!!!!!
return [storyboard instantiateViewControllerWithIdentifier:identifier];
}
}
@catch (NSException *exception) {
NSLog(ERROR_NO_VIEWCONTROLLER_FOUND, [self class], identifier, storyboard.description);
}
}
我在情节提要板上多次检查了此SplitViewController的配置,并且情节提要ID是正确的。如果有帮助,则不会将此SplitViewController子类化。
有人处理过类似的事情吗?
谢谢
最佳答案
好吧,我有点傻xD
UISplitViewController在iOS 8和更高版本中支持iPhone,但是我在iOS 7模拟器中进行了尝试。
编辑
但是奇怪的事情到了。实际上,iOS 7在iPhone中支持UISplitViewController,并且如果它是INITIAL VIEW CONTROLLER,它就可以工作。如果您尝试加载后(如我在问题中所尝试的那样),则会收到相同的错误。
因此,我将最初的View Controller更改为UISplitViewController,并在需要时更改了root视图控制器。我可以返回我的SplitViewController,因为在这种情况下,[storyboard InstantiateInitialViewController]可以正常工作。
谢谢你的时间
关于ios - iOS 7 UISplitViewController“在 Storyboard中未找到ViewIdentifier”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28693173/