你正在覆盖你的 saveTheArray 项目 UserDefaults 每次都有一个新阵列。
saveTheArray
UserDefaults
您想先获取已保存的数组,附加新游戏数据,然后重新保存:
//Create user defaults instance let userDefaults = UserDefaults.standard //User defaults key let historicalGameDataKey = "historicalGameData" //Fetch game data array var historicalGameData = userDefaults.array(forKey: historicalGameDataKey) //Create array if it is nil (i.e. very first game) if historicalGameData == nil { historicalGameData = [] } //Create game data dictionary let gameData = [ "playerName": playerName, "playerScore": playerScore ] //Append game data dictionary to the array historicalGameData?.append(["playerName": gameData]) //Save the updated array userDefaults.set(historicalGameData, forKey: historicalGameDataKey
核心数据是存储此数据的更好方法,但此示例应使用UserDefaults解决您的问题。