在我的主視圖中,我從其他兩個視圖收集數據。我從主視圖開始,轉到下一個視圖來獲取數據並返回到原始視圖。然後我轉到最後一個視圖並獲取更多數據,但是當我返回時,原始數據消失了。如何在離開前保存它?如何在離開視圖時保存變量
我試過使用viewWillDisappear
但它不工作。這是一個好方法,如果是這樣,我該如何去使用它?
這些數據的兩片通過賽格瑞進來:
var homeTeamName = String()
var awayTeamName = String()
我做這個當我加載:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib. }
HomeName.text = homeTeamName
HomeImage.image = UIImage(named:homeTeamName)
AwayName.text = awayTeamName
AwayImage.image = UIImage(named:awayTeamName)
}
Note:
一切都與遠從一個視圖來了,一切都與家從另一個來。
現在我保存這樣的:
override func viewWillDisappear(_ animated: Bool) {
UserDefaults.standard.set("value", forKey: "homeTeamName")
}
檢索這樣的:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
UserDefaults.standard.string(forKey: "homeTeamName")
}
仍然沒有工作。
在此先感謝!
您是否嘗試過委託模式? –
你可以使用appdelegate爲你可以檢查我以前的答案在這裏https://stackoverflow.com/questions/45407423/sharing-data-between-multiple-view-controllers-without-segue-swift-3/45408261#45408261 。 – luckyShubhra
你解決了這個問題嗎? –