0
我必須編寫一個支持iOS 7和8的iOS應用程序,並且在此應用程序中,我有兩個視圖控制器A和B以及導航控制器和它們之間的連線。當SEGUE激活,我不得不從視圖控制器的數據獲取到視圖控制器B.我的代碼完美地工作在iOS 8而不是在iOS 7prepareForSegue無法在iOS 7上獲得目標視圖控制器
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
if segue.identifier == userDataSegue {
let navController = segue.destinationViewController as? UINavigationController
if let userDataTableViewController = navController?.topViewController as? UserDataTableViewController {
userDataTableViewController.userData = user
}
}
}
你知道爲什麼會發生這種情況,以及如何我可以修復它嗎?我可以通過將東西保存在NSUserDefaults中並在vc B中讀取來解決問題,但這會使我的代碼變得混亂。
我感謝所有幫助:d
什麼是'userDataSegue'? – Schemetrical
這是什麼樣的segue?一個模態?因爲如果它是「常規」推送segue,destinationviewcontroller應該是userdatatableviewcontroller而不是另一個navigationcontroller。奇怪的是,你說它適用於ios8 ... –
@AndreSlotta另一個視圖控制器是一個嵌入了導航控制器的常規視圖控制器。它確實可以在iOS 8上運行。 – rodrigoalves