2017-01-30 22 views
0

我有一個意想不到的問題,即通過Segue將var傳遞給VC。在Objective C和Swift的早期版本中工作得很好。這是我在做什麼:Swift 3通過一系列Segues/ViewControllers傳遞var

我從下載的json文件中提取一組變量以填充TableViewCell,然後將Cell顯示的變量以及與該單元格選擇相關的其他變量傳遞給DetailViewController。這是通過爲Segue做準備,在DetialViewController上設置變量。然後destination.myVarToSend = myVar .....

這一切工作正常。

但是,我想將這些變量中的兩個從DetailVC傳遞給ThirdViewController。我像以前一樣設置它,但是我在ThirdViewController的變量中得到一個零有任何想法嗎?有什麼我失蹤?

ThirdViewController實際上是一個MapView,我傳遞的變量是Double。嘗試通過這些不起作用,因此我正在嘗試並嘗試對字符串變量進行相同操作。 (當然,我將json文件中的數據更改爲文本字符串)。

我現在沒有發佈任何代碼,因爲它是所有標準的東西,但如果需要可以做。 :-)

非常感謝

回答

0

我只是發現了類似的問題,這對我來說工作得很好,在回答:How do you pass data between view controllers in Swift?

final class Shared { 
static let shared = Shared() //lazy init, and it only runs once 

var stringValue : String! 
var boolValue : Bool! 
} 
To set stringValue 

Shared.shared.stringValue = "Hi there" 
to get stringValue 

if let value = Shared.shared.stringValue { 
    print(value) 
}