2016-06-12 69 views
1

我是一個快捷的新手,我有一個簡單的問題,我希望有人能幫我弄清楚。Swift在標籤欄中創建'universal'segue應用程序

我有一個多選項卡的應用程序。我從Stopryboard上的選項卡視圖控制器創建了一些賽格。我已經給出了segues標識符,我使用performSegueWithIdentifier("tab1ToMyTarget", sender: sender)從我的Tab1ViewController代碼中調用它們沒有問題。

但是,我希望能夠從任何應用程序的選項卡調用segue,而無需從其他選項卡的視圖控制器創建新的segues(即,我不想創建"tab2ToMyTarget" - 我認爲有更好的辦法!)。

我的問題:我創建這些「通用」塞格斯標籤欄視圖控制器(例如"tabBarToTarget")(如果是的話我怎麼把它從我的標籤視圖控制器之一)? ...或...

我是否從單個選項卡視圖控制器(tab1ToTarget)保留segue並以某種方式從同級選項卡視圖控制器調用該segue?

回答

1

首先,設置您想要轉到storyboard Id的視圖控制器。然後運行:

let vc = storyboard!.instantiateViewControllerWithIdentifier("someViewController") 
self.presentViewController(vc, animated: true, completion: nil) 
+0

感謝這個想法 - 聽起來很完美,我沒有意識到這種方法,所以感謝您抽出時間發佈代碼段。現在就試試看:-) – James

+0

完全按照我想要的那樣工作 - 我唯一要做的就是展開故事板「let vc = storyboard!.instantiateViewControllerWithIdentifier(」testView「)'(我還不知道什麼時候有些東西會成爲可選的或者不是!...我是這樣一個n00b!:-) – James

+0

噢!我忘了那個。我將編輯我的答案以供將來參考。 – penatheboss

1

您不能使用相同的segue從另一個控制器打開控制器。最好使用它的故事板ID實例化一個視圖控制器,然後基於該流呈現/顯示。

相關問題