2013-04-17 23 views
6

如何識別UIStoryboard?識別UIStoryboard

該類有創建和實例化的方法,但我沒有看到類似name的@property。例如。

獲得一個Storyboard對象

+ storyboardWithName:bundle: 

實例化故事板視圖控制器

– instantiateInitialViewController 
– instantiateViewControllerWithIdentifier: 

有什麼建議?

==== UPDATE

我希望這樣的事情self.storyboard.name[self.storyboard description],例如:

NSLog(@"This Storyboard is: %@", self.storyboard.name); 

也許它並不意味着是。

+0

這取決於你試圖識別它的位置。如果您在故事板中創建的控制器中,則只需使用self.storyboard。如果您是通過應用程序委託來完成此操作,或者您需要獲取另一個故事板的引用(而不是您的控制器所在的位置),那麼您需要使用Brian Luby在其答案中顯示的方法。 – rdelmar

回答

3

您可以通過它的名字在項目導航標識故事板:

enter image description here

您可以通過在界面生成器設置它的故事板ID的身份檢查確定從故事板視圖控制器:

enter image description here

一旦你擁有這些,那麼你可以通過你的代碼訪問它們

UIStoryboard *iPhoneStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
ViewController *firstViewController = [iPhoneStoryboard instantiateViewControllerWithIdentifier:@"FirstViewController"];