我有一個UIStoryboard
,它由4到5個ViewControllers
組成。這些ViewControllers
通過push segue相互連接。這個故事板沒有嵌入NavigationController
裏面。模態地呈現導航控制器中的故事板
現在我必須在我的應用程序的兩種不同情況下使用這UIStoryboard
。
這
UIStoryboard
是ViewController
這已經是一個NavigationController
裏面,所以我可以簡單地做這樣的內側推動。UIStoryboard * myStoryboard = [UIStoryboard storyboardWithName:@「myStoryboard」bundle:nil]; UIViewController * vc =(UIViewController *)[myStoryboard instantiateInitialViewController]; [self.navigationController pushViewController:vc animated:YES];
這是我們正在推動一個NavigationController
所以裏面的UIStoryboard
進一步導航UIStoryboard's
ViewControllers
可以使用其中的故事板推NavigationController
工作完全正常。
第二種情況是,是具有模態地從一個的viewController,我可以做這樣呈現這個
UIStoryBoard
。UIStoryboard * myStoryBoard = [UIStoryboard storyboardWithName:@「myStoryBoard」bundle:nil]; UIViewController * vc = [myStoryBoard instantiateInitialViewController];
[自presentViewController:VC動畫:是完成:^ {
}];
它成功,但現在呈現爲UIStoryboard
不以任何NavigationController
當我這樣做,從第一ViewController
到推組合舞蹈第二ViewController
崩潰的UIStoryboard
內(應該)說
Could not find a navigation controller for segue. Push segues can only be used when the source controller is managed by an instance of UINavigationController.'
燦幾類b ODY告訴我怎麼能解決這個問題,或者我如何以編程方式嵌入或刪除UIStoryboard
的NavigationController