[英]Loading UIViewController “from” Nib File
我試圖從Nib文件創建一個UIViewController
。 在Google上我發現我只能從Nib加載UIView。
但有些人建議我可以創建一個Nib文件(UIView),其文件所有者設置為我們的ViewController
。
這就是我做的,我沒有崩潰,但視圖沒有顯示。
編輯:試圖像這樣推動viewcontroller
self.navigationController!.pushViewController(CoolViewController(), animated: true );
但它被推動時仍顯示黑屏
XCode 6.3 - 不使用故事板
試試這個,你可以加載一個帶有nibName:
的UIViewController
nibName:
迅速
self.navigationController!.pushViewController(CoolViewController(nibName: "CoolViewControllerNibName", bundle: nil), animated: true )
Objective-C的
CoolViewController*coolViewCtrlObj=[[CoolViewController alloc] initWithNibName:@"CoolViewControllerNibName" bundle:nil];
[self.navigationController pushViewController:coolViewCtrlObj animated:YES];
您需要分配ViewController
,然后通過告訴iOS nib的名稱來初始化它。
我看到你正在使用Swift; 我害怕我不知道快速,只有客觀 - c。 但是這里是如何在objective-c中完成的:
[self.navigationController pushViewController [[[CoolViewController alloc] initWithNibName: @"CoolDesign" bundle: nil] autorelease];
...“CoolDesign”是你的筆尖的基本名稱。 也就是說,你在Interface Builder中創建CoolDesign.xib,Xcode將XML - text - xib編譯成CoolDesign.nib,然后告訴initWithNibName只打開@“CoolDesign”。
僅告訴Interface Builder設計文檔是UIViewController
是不夠的。 雖然原則上iOS可以弄清楚你的意思,但原則上你可以為一個UIViewController
子類提供多個nib。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.