如何使用 Swift 从 tableview 单元格中获取数据而不显示在标签上?

Posted

技术标签:

【中文标题】如何使用 Swift 从 tableview 单元格中获取数据而不显示在标签上?【英文标题】:How to get data from tableview cell without showing on label using Swift? 【发布时间】:2019-02-13 18:32:59 【问题描述】:

我的场景,我正在尝试创建tableview 单元格单击以获取label 数据,我还有更多values,但我不想在label 中显示。现在,我怎样才能将assignunshowed 数据转换为cell,因为我在sending 单元格didselect 之后将值转换为另一个view controller

例如:

我有两个数组值

 let alpha: [String] = ["A", "B", "C", "D", "E"]
 let numeric: [String] = ["1", "2", "3", "4", "5"] 

在这里,我只将 alpha 值播种到 tableview 单元格中

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

    let cell:MyCustomCell = self.tableView.dequeueReusableCell(withIdentifier: cellReuseIdentifier) as! MyCustomCell
    cell.textlabel.text = alpha[indexPath.row]
    return cell

现在,我要获取 tableview 单元格选择的值,在这里,我可以获取 cell.textlabel.text 值,但我还需要获取数值而不分配任何标签。

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 

     let currentCell = tableView.cellForRow(at: indexPath)! as? MyCustomCell
     print(currentCell?.textlabel?.text ?? "unknown alpha")

     // Here I need to get numeric values also 

【问题讨论】:

didSelectRowAt 中的参数与cellForRowAt 中的参数相同:indexPath ... let numbericValue = numeric[indexPath.row] “坚持”是什么意思?您始终可以使用 numeric[indexPath.row] 从您的 dataSource 数组中获取它,就像 Robert 写的那样 【参考方案1】:

我们可以使用下面的代码得到未显示的单元格索引数组值

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 

        let currentCell = tableView.cellForRow(at: indexPath)! as? MyCustomCell
        print(currentCell?.myCellLabel?.text ?? "unknown")

        let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let newViewController = storyBoard.instantiateViewController(withIdentifier: "detailview") as! DetailViewController
        newViewController.name = currentCell?.myCellLabel?.text ?? "unknown"
        newViewController.country = self.numeric[indexPath.row]
        self.present(newViewController, animated: true, completion: nil)
      

【讨论】:

以上是关于如何使用 Swift 从 tableview 单元格中获取数据而不显示在标签上?的主要内容,如果未能解决你的问题,请参考以下文章

Swift iOS - 如何在按下单元格之前从 TableView 的所有 IndexPath 中获取数据

如何使用 Swift 保存从 tableView 上的 textField 收到的用户答案

Swift:如何在 tableView 中模糊点击单元格

无法从swift ios中的一段tableview中删除单元格

从 alamofire swift 的 tableview 单元格中的 url 加载图像

Swift - 如何在 tableView 顶部插入单元格保持偏移和滚动惯性