我的问题是关于 UISlider
的。我设法实现了一切,但我不知道如何保存它的状态。
我到处都看了,但所有帖子都是旧版本的 swift/xcode。所以问题是我如何保存它的状态,以便当我转到另一个 View 然后返回时状态仍然相同。
非常感谢!
import UIKit
class SettingsViewController: UIViewController {
var sequeInt = 0
let savedWordLength = NSUserDefaults.standardUserDefaults()
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBOutlet weak var wordLength: UISlider!
@IBOutlet weak var wordLengthValue: UILabel!
var selectedValue: Int = 5
@IBAction func valueChanged(sender: UISlider) {
selectedValue = Int(sender.value)
savedWordLength.setInteger(selectedValue, forKey: "myInt")
let ourInt = savedWordLength.integerForKey("myInt")
sequeInt = ourInt
print (sequeInt)
wordLengthValue.text = String(ourInt)
}
最佳答案
UISlider 值属性是一个 Float,因此您可以使用 NSUserDefault 的方法 setFloat保存它的值并在下次使用 NSUserDefaults 方法出现 View 时检索它 floatForKey .
保存:
NSUserDefaults.standardUserDefaults().setFloat(sender.value, forKey: "wordLength")
加载它:
override func viewWillAppear(animated: Bool) {
wordLength.setValue(NSUserDefaults.standardUserDefaults().floatForKey("wordLength"), animated: false)
}
关于swift - UISlider,保存状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34108248/