0
我正在使用tableView来显示名称列表。当用户点击其中一个单元格时,会弹出一个窗口,显示更多细节。我正在使用此功能来检查用户点击了哪个单元格。如何知道使用Swift在tableView中点击哪个单元格
var selectedCell: Int?
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print("This cell from the chat list was selected: \(indexPath.row)")
selectedCell = indexPath.row
}
不幸的是,它似乎给予0和2之间的随机数(我目前有三个显示的单元格)。
你知道我怎么知道哪个单元被点击?
预先感谢您。
编辑:
我明白什么是伪造我的结果。
我正在使用此功能将选定的单元格推送到另一个视图控制器(名为ConversationViewcontroller)。但是,segue fonction在tableView函数之前被调用,所以segue推动之前选择的单元格。我怎么能纠正这个?
这里是我的赛格瑞代码:再次
//SEGUE: Cell was selected: pass chatID
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "OpenChat" {
if let toViewController = segue.destination as? ConversationViewController {
toViewController.chatIdentifier = selectedCell
}
}
}
感谢。
您发布的代码是正确的代码试试这个
。 'indexPath.row'将成为您点击的行。 – rmaddy
它似乎工作正常。如果您有三个单元格,则第一个indexpath.row将为0,第二个为1,然后为2. –
确认将委托和数据源分配给您的表视图 – Alexander