我目前正試圖在我的應用程序中實現介紹(教程)部分,我想讓用戶可以隨時查看它。我的應用程序的主要部分由UIViewController XIB文件(ViewController_iPhone.xib
,ViewController_iPad.xib
)組成,爲了介紹性視圖的目的,我發現使用Storyboards更容易。因此,在一個快速總結中:我試圖從主ViewController(XIB)切換到Storyboard中的起始ViewController,具體取決於設備類型 - >這一切都是在UIButton tap上開始的。應用程序試圖提出一個無模型視圖控制器
在我的故事板我已經分配的個人故事板的ID因此無論是iPad,iPhone或與iPhone 4英寸,它會加載正確的觀點:
故事板的ID:3-Slide1
(新iPad),4-Slide1
(iPhone), 5-Slide1
(iPhone-4inch)。
這裏是ViewController.m中的按鈕代碼:
NSString *nibName;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
nibName = @"3-Slide1";
} else {
if ([UIScreen mainScreen].bounds.size.height == 480.0) {
nibName = @"4-Slide1";
} else {
nibName = @"5-Slide1";
}
}
IntroViewController *introViewController = [self.storyboard instantiateViewControllerWithIdentifier:nibName];
[self presentViewController:introViewController animated:YES completion:nil];
的SIGABRT錯誤:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Application tried to present a nil modal view controller on target <ViewController: 0x20865170>.
爲什麼這個錯誤出現?我已經嘗試解決這個問題一個多小時了,但沒有取得任何進展。有人可以幫我在這裏嗎?
注意:這不是一個重複的帖子,有大量的帖子具有相同的一般SIGABRT錯誤,但都似乎有不同的問題。
坑上。我剛剛讀了你的第一段。當前的視圖控制器(帶有你已經顯示的代碼的那個視圖控制器,你試圖加載這個介紹)是不是從Storyboard加載的? – 2013-03-25 13:28:44