小编Ari*_*ova的帖子

swift didSelectAtIndexPath没有被触发

首先,我想描述一下我想要做的事情.我有两个tableViewControllers- 第一个包含账单号码列表,第二个应显示账单的详细信息,具体取决于账单号码的哪个单元格被选中.

在我的第一个tableViewController我使用它从单元格获取bill的号码并将其传递给detailTableViewController:

 override func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
    let indexPath = tableView.indexPathForSelectedRow
    let currentCell = tableView.cellForRow(at: indexPath!) as! CustomBillTableViewCell

    valueToPass = currentCell.billNumberLabel.text
    print(valueToPass)
    performSegue(withIdentifier: "billsDetailSegue", sender: self)

}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if (segue.identifier == "billsDetailSegue"){
        let detailController = segue.destination as! BillsDetailTableViewController
        detailController.receivedValue = valueToPass
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是,didSelectRowAt在第一个tableView只有prepare函数触发器中的单元格选择并且它将空值传递给下一个视图后,函数根本不会被触发.

uitableview ios swift

3
推荐指数
1
解决办法
94
查看次数

标签 统计

ios ×1

swift ×1

uitableview ×1