我正在使用这个GitHub项目来处理我正在处理的应用程序(Github Link 1)。不幸的是,这个项目不支持Storyboard。但是,我确实找到了一个带有Storyboard支持的版本(Github Link 2)但是,我无法让它与他们提出的建议一起工作。以下是建议的结果:
RESideMenu
的子类RootSideMenuViewController
执行并将初始场景的自定义类设置为您创建的自定义类。 当我尝试这个时:
RESideMenuItem *homeItem = [[RESideMenuItem alloc] initWithTitle:@"Home" action:^(RESideMenu *menu, RESideMenuItem *item) { [menu hide]; UIViewController* vc = [self.storyboard instantiateViewControllerWithIdentifier:@"MainViewController"]; [menu displayContentController:vc]; }];
当我尝试时,我收到一条错误说:
Property 'storyboard' not found on object of type 'AppDelegate *'
UIStoryboard – instantiateViewControllerWithIdentifier:
) 以下是我尝试尝试时的代码:
RESideMenuItem *homeItem = [[RESideMenuItem alloc] initWithTitle:@"Home" action:^(RESideMenu *menu, RESideMenuItem *item) { [menu hide]; UIViewController* vc = [UIStoryboard instantiateViewControllerWithIdentifier:@"MainViewController"]; [menu displayContentController:vc]; }];
当我尝试这个时,我收到一条错误消息,说:
No known class method for selector 'instantiateViewControllerWithIdentifier:'
最后一个,我意识到它已经完成了。
我看了看谷歌,看看能不能找到任何东西,并发现了这个:
UIStoryboard [instantiateViewControllerWithIdentifier:@"MainViewController"];
这也不起作用。
对不起,很长的帖子,但我不太清楚我还能做些什么来解决这个问题。还有其他解决方案吗?我忽略了什么吗?请问我是否对某些事情不清楚。
供参考,我使用的是Xcode 4.6.3。我正在使用Storyboard,我正在使用ARC编写我的项目。
答案 0 :(得分:3)
您需要先加载故事板:
[[UIStoryboard storyboardWithName:@"MainStoryboardName" bundle: nil] instantiateViewControllerWithIdentifier:@"SomeVCInMainStoryboard"];
假设项目设置正确,您只需更改名称即可加载Storyboard和后续视图控制器。