我收到此错误:
无法将类型“ UITableViewCell”的值转换为“ NSIndexPath”
下面是我的代码
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
performSegue(withIdentifier: "ToProfile2", sender: indexPath)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "ToProfile2" {
let index = sender as! NSIndexPath
print(index)
}
}
答案 0 :(得分:1)
您已经接近,但是indexPath
不是发件人,您选择的单元格应该是发件人。试试:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
performSegue(withIdentifier: "ToProfile2", sender: self)
}
如果您要为刚刚选择的单元格标识indexPath
,下面将为您提供
tableView.indexPathForSelectedRow
答案 1 :(得分:0)
如果segue的起源是表格视图单元格,则会发生错误。
有两种选择:
didSelect
,将sender
参数强制转换为UITableViewCell
,然后调用tableview.indexPath(for:
以获取索引路径。