1

我有關聯到一個UIViewController定製類XIB文件(ZocaloPlayerViewController)現在視圖控制器模態,從廈門國際銀行文件

enter image description here

和IM試圖提出一個UIViewController(在故事板製作)模態與水平翻轉

enter image description here

,但我得到一個錯誤:

這是我嘗試如何呈現視圖控制器

ShowDetailsArtistAlbumViewController *vc = [[ShowDetailsArtistAlbumViewController alloc] initWithNibName:@"ShowDetailsArtistAlbumViewController" bundle:nil]; 
vc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentViewController:vc animated:YES completion:^{ 

}]; 

但我得到這個錯誤...

Uncaught exception: Could not load NIB in bundle: 'NSBundle </var/mobile/Containers/Bundle/Application/57C2AD20-51DB-4C43-BB8F-2E8F22CD2E2A/MyMusicApp.app> (loaded)' with name 'ShowDetailsArtistAlbumViewController' 

我與

[self.parentViewController presentViewController:vc animated:YES completion:^{ 

}]; 

努力,但沒有任何反應..

編輯: 我試過這種方式

UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
ShowDetailsArtistAlbumViewController *vc = [sb instantiateViewControllerWithIdentifier:@"ShowDetailsArtistAlbumViewController"]; 
vc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentViewController:vc animated:YES completion:^{ 

}]; 

視圖控制器呈現,但即時得到內部

回答

1

黑色的觀點,但沒有你說「我有關聯的廈門國際銀行文件」,但問題是,你不知道。運行時正在尋找名爲的xib文件ShowDetailsArtistAlbumViewController.xib但您沒有。您需要重命名您的xib文件以符合運行時期望。

或者,您可能會錯誤地創建視圖控制器。你是說這個:

ShowDetailsArtistAlbumViewController *vc = 
    [[ShowDetailsArtistAlbumViewController alloc] 
     initWithNibName:@"ShowDetailsArtistAlbumViewController" bundle:nil]; 

這就是爲什麼運行時會認爲你有一個筆尖稱爲ShowDetailsArtistAlbumViewController.xib - 你是,就在那裏告訴它在該行!

這很好,如果實際上有一個叫做的筆尖,ShowDetailsArtistAlbumViewController.xib。你的問題是沒有。你欺騙了運行時,所以自然會崩潰。

如果你確實想在故事板使用視圖控制器,這如何訪問該實例。你正在做的是創建一個不同的實例。如果你想要故事板中的實例,你需要與故事板對話並告訴它instantiateViewControllerWithIdentifier:

+0

我正在解釋自己錯了。我想要呈現的視圖控制器是在故事板中製作的。看看我的問題編輯。 – Quetool

+0

你不聽我說的話。視圖控制器如何實例化並不重要。該錯誤消息意味着運行時正在尋找稱爲_ShowDetailsArtistAlbumViewController.xib_的xib文件,但您沒有。 – matt

+0

馬特,我明白了,但如果視圖控制器是在故事板,我必須把筆尖名稱?請看我編輯圖像的問題... – Quetool

相關問題