2013-05-07 66 views
1

我創建了一個導航視圖控制器。靜態表格視圖單元將我推向「個性化」視圖。那麼,如何以編程方式從此控制器層次結構中的另一個視圖加載此視圖?在導航視圖控制器中加載特定場景

enter image description here

有了這行代碼的導航欄會被隱藏起來......

UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"personalizationView"]; 
    vc.modalTransitionStyle = UIModalTransitionStyleCoverVertical; 
    [self presentViewController:vc animated:YES completion:NULL]; 
+0

這取決於你是從應用未來在那裏使用他們的另一個例子。你可以像Mundi建議的那樣繼續推進,或者像MarkM建議的那樣放鬆一下。看看你所有的控制器是如何連接起來的,以及你想從哪一個中調用這個控制器會很有幫助。 – rdelmar 2013-05-07 21:03:58

+0

我想從我沒有通過segue連接的'MainViewController'調用它。通常我會使用我粘貼的代碼 – Niklas 2013-05-08 19:12:51

+0

MainViewController是否未嵌入到您的靜態表視圖的控制器所嵌入的導航控制器中?瞭解MainViewController在方案中的位置會很有幫助。 – rdelmar 2013-05-08 19:36:20

回答

1

正確的方法是從其他視圖控制器繪製另一個SEGUE。

然後,您可以「推」,在代碼:

[self performSegueWithIdentifier:@"ShowPersonalization" sender:self]; 
+0

謝謝,我找到了解決方法。我從我的數據庫中獲取一些數據,從而允許從「SettingsViewController」有條件地執行seque。像我想的那樣簡潔... – Niklas 2013-05-10 12:23:43

1

可以利用出口(放鬆)塞格斯做到這一點。使用(UIStoryboardSegue)作爲您想要退出的目標視圖上的IBAction參數,並從viewController的出口拖動到該動作以直接彈出到該視圖。海事組織這是保持最好的故事板祕密之一,我現在一直在使用它們。 ;-)

// Exit segue from destinationController 
- (IBAction)hitSomethingOnDestination:(UIStoryboardSegue*)segue 
{ 
    // 
} 

Here是如何在導航堆棧

相關問題