首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >交换按钮单击以交换用户默认值,并使用Swift将值更新到TableView UI中

交换按钮单击以交换用户默认值,并使用Swift将值更新到TableView UI中
EN

Stack Overflow用户
提问于 2019-05-20 18:16:30
回答 1查看 145关注 0票数 0

我的场景是,我尝试交换NSUserdefault值并对其执行restore immediately。在这里,我有一个按钮点击操作,一旦UIButton点击,我需要交换我的用户默认值并恢复它。例如: A值存储到B中,B Values存储到A中。它应该一次又一次地工作。我使用相同的viewcontroller存储的值。因此,存储需要快速更新。

我的代码

代码语言:javascript
运行
复制
 // MARK: Switch Language
    @IBAction func swapClick(_ sender: Any) {

            // I need to do exchange value and restore it immediately 
    UserDefaults.standard.set(default_from_ID, forKey: "To_ID") // from here
        UserDefaults.standard.set(default_to_ID, forKey: "From_ID") // to here

    }

Tableview委托

代码语言:javascript
运行
复制
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

        let cell = self.translation_tableview.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TranslationCustomCell

        cell.from_label.text = "\(default_from_Name ?? "")"
        cell.to_label.text = "\(default_to_Name ?? "")"

        return cell
  }
EN

回答 1

Stack Overflow用户

发布于 2019-05-20 19:18:17

您需要首先获取值,然后通过交换密钥来设置值

代码语言:javascript
运行
复制
@IBAction func swapClick(_ sender: Any) {
    let values = (UserDefaults.standard.string(forKey: "DFrom_Name"),UserDefaults.standard.string(forKey: "DTo_Name"))
    UserDefaults.standard.setValue(values.1, forKey: "DFrom_Name")
    UserDefaults.standard.setValue(values.0, forKey: "DTo_Name")
    self.translation_tableview.reloadData()
}

UserDefaults.standard.setValue("London", forKey: "DFrom_Name")
UserDefaults.standard.setValue("NewYork", forKey: "DTo_Name")

print(UserDefaults.standard.string(forKey: "DFrom_Name"))//Optional("London")
print(UserDefaults.standard.string(forKey: "DTo_Name"))//Optional("NewYork")
swapClick(UIButton())
print(UserDefaults.standard.string(forKey: "DFrom_Name"))//Optional("NewYork")
print(UserDefaults.standard.string(forKey: "DTo_Name"))//Optional("London")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56218801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档