2015-10-15 54 views
0

所以這是我的問題。顯示和彈出多個視圖控制器

第一個ViewController有一些關於姓名,日期,一個事件的人(用戶創建和事件)。它也有一個按鈕,將用戶轉換到一個新的viewControllermapView用戶將創建一個引腳。用戶創建一個Pin後,用戶可以按下該PIN(或者執行一些其他操作來確認PIN用戶放在地圖上是否正確),並且用戶將轉換到新的tableViewController,並選擇附近的多個位置(使用Foursquare API)。

然後用戶必須轉換到第一個ViewController。點擊的位置用戶必須發送到第一個ViewController

這是我第一次使用ViewControllers,我需要你的幫助。

我該怎麼做(不要錯過任何細節請:D)?

+0

使用[unwind segue](https://developer.apple.com/library/ios/technotes/tn2298/_index.html)以訪問先前視圖控制器的變量。 –

+0

我可以從** thirdViewController **放到** firstViewController **嗎?我應該將它們嵌入導航控制器嗎? –

+0

對兩者都是。查看[本網站](http://ashishkakkad.com/2015/04/work-with-unwind-segue-in-swift-language-ios-8/)作爲示例/教程。 –

回答

0

使用展開的segue通過嵌入導航控制器的視圖控制器向後傳遞數據。

下面是一個簡單的例子。

在你的第一個視圖控制器,你可以有這樣的:

var text: String? 

@IBAction func unwindSegue(segue: UIStoryboardSegue) { 
    if let viewController = segue.sourceViewController as? ViewController2 { 
     text = viewController.textField.text 
    } 
    print(text!) 
} 

在第二視圖控制器按ctrl拖動從視圖控制器添加回卷SEGUE的故事板(黃圈在一個正方形,到退出圖標(在視圖控制器的頂部或文檔大綱中),然後單擊您創建的展開順序以創建手動輪廓,然後在文檔輪廓中設置展開輪廓的標識以便您可以參考它(這個例子我簡單地稱它爲「展開」)

在第二個視圖控制器(一個你想通過從後)補充一點:

@IBOutlet var textField: UITextField! 

@IBAction func backButton(sender: AnyObject) { 
    self.performSegueWithIdentifier("Unwind", sender: nil) 
} 

這個簡單的例子可以讓你傳回從textField文本在你的第二個視圖控制器。

n.b.您可以一次放鬆多個視圖。

相關問題