[英]Programmatically create a UIViewController in a project with a storyboard
我正在嘗試使用“下一步”按鈕制作一個ViewController,該按鈕將我帶到同一ViewController類的實例。
@interface ViewControllerDeco ()
{
ViewControllerDeco *page1;
}
viewDidLoad:
page1 = [[ViewControllerDeco alloc]init];
按鈕:
- (IBAction)btnNext:(id)sender {
[self.navigationController pushViewController:page1 animated:YES];
}
它顯示黑屏,我丟失了什么嗎?
因此,如果您沒有在ViewControllerDeco控制器的init函數中添加UI元素,則會出現黑屏。 如果要基於情節提要中的視圖控制器創建ViewControllerDeco的實例,請嘗試如下操作:
ViewControllerDeco *page1 = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewControllerDeco"];
[self.navigationController pushViewController:page1 animated:YES];
確保將故事板標識符添加到要在代碼中加載的VC。
啟動視圖控制器
page1 = [[ViewControllerDeco alloc]init];
實際上並沒有從情節提要中獲取它,它只是創建一個空的新內容(例如,您可以在viewDidLoad中設置一個新內容),如果要從情節提要中創建該內容,則應執行以下操作:
UIViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewControllerDecoId"];
[self.navigationController pushViewController:vc animated:YES];
以前,您應該在情節提要中將控制器的“ ViewControllerDecoId”設置為“ Storyboard ID”
希望有所幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.