gpt4 book ai didi

ios - 如何使用用户默认值保存开关的开/关值?

转载 作者:行者123 更新时间:2023-12-01 17:16:55 24 4
gpt4 key购买 nike

我创建了一个自定义表格 View 单元格。在我的应用程序中,有两个文件。我有一个用于自定义表格 View 单元格的单独文件。然后我有一个表格作为一个整体的 tableviewcontroller 文件。

在我的自定义表格 View 单元格上,有一个 UISwitch。此 UISwitch 的初始值为 off。在自定义表格 View 单元格的文件中,我为开关创建了一个函数。我还为交换机创建了一个 socket 。

@IBOutlet var theSwitch: UISwitch!

@IBAction func mySwitch(_ sender: AnyObject) {
}

在我的 TableView Controller 中,我已经创建了 View 确实出现的功能。我假设我需要做的是将开关的值保存在
@IBAction func mySwitch(_ sender: AnyObject) {
}

然后在 TableView Controller 中,以某种方式调用它在这个 View 中确实出现了函数。
override func viewDidAppear(_ animated: Bool) {
}

我遇到的问题是保存开关的值,如果它被改变。例如,如果用户打开应用程序并打开开关,我希望应用程序保存它,这样当应用程序重新打开时,开关的值仍然是打开的。希望这可以通过使用用户默认值来完成。如果有人可以向我展示执行此操作的代码,那就太好了。

最佳答案

在您的 IBAction方法你像这样保存值

@IBAction func mySwitch(_ sender: UISwitch) {

UserDefaults.standard.set(sender.isOn, forKey: "Switch")

}

在您的 TableView 委托(delegate)方法中以这种方式编写以从用户默认值中获取值并根据您之前的值设置您切换的状态
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

let yourCell = tableView.dequeueReusableCellWithIdentifier("ProfileCell", forIndexPath: indexPath) as! MenuProfileTableViewCell

yourCell.yourSwitch.setOn(UserDefaults.standard.bool(forKey: "Switch"), animated: true)
}

关于ios - 如何使用用户默认值保存开关的开/关值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41216910/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com