【发布时间】:2016-06-03 18:44:21
【问题描述】:
我正在尝试使用xcode和swift 2为IOS制作一个简单的游戏。我想做的游戏类似于“暗室”,所以它没有复杂的图形或任何真正困难的东西。
我无法找到\了解如何保存(然后加载)游戏进度数据,其中包括我的点击次数、数组、文本视图和库存的一些变量。我想要一个“保存”按钮和一个“加载”按钮。
我还要补充一点,我正在制作的游戏是用xcode的设置“简单视图应用程序”。
我是编程新手,请详细说明:)
【问题讨论】:
我正在尝试使用xcode和swift 2为IOS制作一个简单的游戏。我想做的游戏类似于“暗室”,所以它没有复杂的图形或任何真正困难的东西。
我无法找到\了解如何保存(然后加载)游戏进度数据,其中包括我的点击次数、数组、文本视图和库存的一些变量。我想要一个“保存”按钮和一个“加载”按钮。
我还要补充一点,我正在制作的游戏是用xcode的设置“简单视图应用程序”。
我是编程新手,请详细说明:)
【问题讨论】:
对于一个基本的游戏,您可能会使用 NSUserDefaults。只需使用您的设置(即分数、回合等)创建一个 plist 文件(即 Defaults.plist),然后使用类似于以下代码的内容在 AppDelegate 的 didFinishLaunchingWithOptions 方法中读取注册这些默认值。
let defaults = NSUserDefaults.standardUserDefaults()
let prefs = NSBundle.mainBundle().pathForResource("Defaults", ofType: "plist")
let dict = NSDictionary(contentsOfFile: prefs!)
defaults.setObject(dict, forKey: "defaults")
defaults.registerDefaults(dict as! [String : AnyObject])
defaults.synchronize()
稍后您可以通过以下方式读取和设置整个应用的默认设置:
NSUserDefaults.standardUserDefaults()
你会像这样检索一个值:
let score = NSUserDefaults.standardUserDefaults().integerForKey("score")
并这样设置:
NSUserDefaults.standardUserDefaults().setInteger(score, forKey: "score")
【讨论】: