【问题标题】:How to update tableView cell's labels when every time i enter new value in textField?每次我在 textField 中输入新值时如何更新 tableView 单元格的标签?
【发布时间】:2018-02-08 14:15:33
【问题描述】:

每次在 textField 中输入新值时如何更新 tableView 单元格的标签?


@objc func doneClicked() {
        view.endEditing(true)

        //MARK: - ФОРМАТТЕР
        let formatter = NumberFormatter()
        formatter.locale = Locale.current
        formatter.numberStyle = .decimal
        formatter.minimumFractionDigits = 3
        formatter.maximumFractionDigits = 6

         if let text = textField.text, let number = formatter.number(from: text) {

            atmosfera = number.doubleValue

            print(atmosfera)


        }
    }

这个功能是键盘工具栏的按钮。当我按“完成”时,我的键盘关闭并更新值。


func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {


            let cell1 = tableView.dequeueReusableCell(withIdentifier: "resultCell") as! resultTableViewCell


            cell1.nameResult.text = converters[indexPath.row]
            cell1.labelResult.text = String(convertatmo[indexPath.row] * atmosfera)


            return cell1


    }

这是我的细胞。


每次按下键盘上的完成按钮时,我都会将新值保存到 atmosfera var。 我想更新我的labelResult.labels。我该怎么做?

【问题讨论】:

    标签: ios swift uitableview variables uitextfield


    【解决方案1】:

    在您想要刷新整个表格时,随时调用tableViewreloadData 实例方法

     if let text = textField.text, let number = formatter.number(from: text) {
    
            atmosfera = number.doubleValue
    
            print(atmosfera)
    
            self.tableView.reloadData()
    
        }
    
     func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    }
    

    【讨论】:

      【解决方案2】:

      在更新 atmosfera 变量后添加 tableView.reloadData(),这将使用新数据重新加载 tableView。

      【讨论】:

        猜你喜欢
        • 2020-03-14
        • 1970-01-01
        • 1970-01-01
        • 2018-08-08
        • 1970-01-01
        • 2016-12-09
        • 1970-01-01
        • 1970-01-01
        • 2018-11-22
        相关资源
        最近更新 更多