NSUserDefaults的财产观察员

Jas*_*son 1 swift

我有一组按钮,当按下两个按钮时,会触发NSUserDefault,但我需要ViewController中的观察者来做一些动画.

这有可能迅速吗?我可以使用DidSet:和WillSet:还是有其他选择吗?

Zel*_* B. 6

最简单的方法是在计算变量上组合用户默认值和动画,如下所示:

var defaultName:String{
    get {

        var returnValue: NSString? = NSUserDefaults.standardUserDefaults().objectForKey("defaultName") as? NSString

        if returnValue == nil //Check for first run of app
        {
            returnValue = ""
        }
        return returnValue!
    }

    set (newValue) {
        NSUserDefaults.standardUserDefaults().setObject(newValue, forKey: "defaultName")
        NSUserDefaults.standardUserDefaults().synchronize()
        // start your animations here
    }
}
Run Code Online (Sandbox Code Playgroud)

接下来单击按钮,只需更改defaultName值,以便存储newValue并触发动画