我在离开UISlider
后尝试保存ViewController
位置(或当前值)时遇到问题。 UISlider
位于我的应用设置ViewController
中,可控制应用中的音乐音量。当我更改值并保留设置ViewController
时,音乐会使用用户选择的级别。但是,如果您返回到设置ViewController
,它将返回到我在界面构建器中设置的默认值。
我已尝试使用NSUserDefaults
保存其值,但没有取得任何成功。我该如何实现这种类型的代码呢?
答案 0 :(得分:4)
NSUserDefaults是一种简单有效的方法来保存这样的设置,但它只会保存您提供的值。您仍需要检索该值,并在下次加载该控制器时使用它来设置滑块的值。如果您发布给您带来麻烦的代码,以及对无法正常工作的描述,将会有所帮助。您是否可以在sharedDefaults对象中保存值?你能找回来吗?
例如,要保存控制温度的滑块的值,您需要执行以下操作:
[[NSUserDefaults sharedDefaults] setFloat:temperatureSlider.value forKey:@"temperature"];
并恢复滑块,你会说:
float temperature = [[NSUserDefaults sharedDefaults] floatForKey:@"temperature"];
temperatureSlider.value = temperature;
当然,将常量用于@“温度”这样的事情总是很好。我只是想在这里保持尽可能简单。