2013-06-04 77 views
3

下面是一個使用initWithNibName有獨立的廈門國際銀行意見的例子:使用initWithNibName用故事板

TerminalViewController *ctrl = [[TerminalViewController alloc] 
    initWithNibName:@"ControllerView" bundle:[NSBundle mainBundle]]; 
ctrl.appDelegate = self; 
viewCtrl = ctrl; 

不過,我需要用故事板UI佈局來實現它。對於「initWithNibName」我怎麼可以指向一個視圖中我的故事板:

即:

TerminalViewController *ctrl = [[TerminalViewController alloc]  
    initWithNibName:@"STORYBOARD.ControllerView" bundle:[NSBundle mainBundle]]; 
    ctrl.appDelegate = self; 

任何幫助深表感謝。 謝謝, 戴夫

回答

14

,您可以給控制器的故事板的Identifier然後用這個...

[self.storyBoard instantiateViewControllerWithIdentifier:@"TheIdentifier"]; 

只需添加到這個...

當創建一個子類UIViewController來自xib文件。如果你有一個叫MyViewController類和廈門國際銀行名爲MyViewController.xib那麼所有你需要做的是...

MyViewController *controller = [[MyViewController alloc] init]; 

然後系統會查找名爲MyViewController.xib一個XIB文件,並用它來初始化對象,只有回退在xib文件不存在的情況下在代碼中執行。

4

獲得與故事板分鏡名稱實例並設置標識的所有場景,並獲得實例

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
    MyNewViewController *myVC = (MyNewViewController *)[storyboard instantiateViewControllerWithIdentifier:@"myViewCont"]; 
2
UIStoryboard *stryBoard=[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
TerminalViewController *ctrl = [stryBoard instantiateViewControllerWithIdentifier:@"ControllerView"];