我對swift有點新,我需要幫助保存一個int變量來保存用戶收集的硬幣,並在應用程序關閉後保存它,所以這裏是我做的,我有兩個場景之一代表具有硬幣可變(因此我可以很容易地從另一個場景控制它)的結構的startMenu,另一個場景是GameScene,並且在GameScene中,每當用戶與硬幣節點交互時,它添加1到的StartMenu保存硬幣變量在swift 3
在StarMenu場景這裏的硬幣變量在我的結構
struct Variables {
static var CoinsCollected = 0
}
,這裏是我的所作所爲使我T爲保存
let defaults = UserDefaults.standard
defaults.set(Variables.CoinsCollected, forKey: "CoinsCollected")
defaults.synchronize()
,我有我的didbegin接觸裏面GameScene這一行,當用戶用硬幣
Variables.CoinsCollected += 1
相互作用,我有這個行會更新變量
硬幣的labelnodecoinsCollectedLabel = SKLabelNode(text: "coins: \(Variables.CoinsCollected)")
和一切工作正常,但它不會得到保存,我知道我失去了一些東西,我試着讀了很多人的問題,但同樣的問題,但它d idn't工作,所以如果任何你們可以幫助我,我將不勝感激
你有代碼*保存*你的'CoinsCollected',但你有代碼來*從'UserDefaults'加載*嗎? – Danoram
@danorm我編輯了我的問題,我有這條線,但我不知道這是你在說什麼 –
檢查這個答案:http://stackoverflow.com/a/40330947/1689376 – alexburtnik