Swift UserDefaults

时间:2017-02-10 10:03:00

标签: ios swift nsuserdefaults

我正在为我正在制作的游戏编写代码,并且正在尝试创建User Default,以便在您关闭应用后保存数据。

let UserDefaults = NSUserDefaults.standardUserDefaults()
UserDefaults.setBool(false, forKey: "hasStarted")

但在最后一行,它强调UserDefaults并说“预期声明。

我做错了什么?

3 个答案:

答案 0 :(得分:2)

在使用Swift 2时,您需要做的就是将代码放在函数/方法中:

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setBool(false, forKey: "hasStarted")

喜欢这样,在:

func applicationWillTerminate( application: UIApplication) {

    let defaults = NSUserDefaults.standardUserDefaults()
    defaults.setBool(false, forKey: "hasStarted")
}

或在这里:

func applicationWillResignActive( application: UIApplication) {
    let defaults = NSUserDefaults.standardUserDefaults()
    defaults.setBool(false, forKey: "hasStarted")
}

我在那里打电话是因为你说当你关闭应用程序时你希望它保存它。

说明:

你在任何函数/方法的主体之外调用你的函数,这在swift中受到限制。除了声明和初始化变量/常量之外,你不允许在方法之外做任何事情(只在类的主体中)。

答案 1 :(得分:1)

你在哪里声明和初始化变量?如果您在任何方法之外初始化变量,那么它将为您提供您提到的相同错误

答案 2 :(得分:0)

尝试其他名称。

试试这个:

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setBool(false, forKey: "hasStarted")