有一些我无法弄清楚的问题。我在xib文件中有单个静态单元格,我想从该单元格的详细公开附件到其他视图控制器。
猜猜我必须使用这种方法:
func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
self.performSegue(withIdentifier: "SegueID", sender: self) // #ERROR
}
但我有一个错误:
无法转换'Lists.ListViewController'类型的值 (0x104c0e7b8)到'UITableViewCell'(0x106875bf8)。
如何正确创建此segue?
答案 0 :(得分:3)
如果您想访问prepareForSegue
中的单元格,可以尝试这种方式。
func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
//Pass the indexPath as sender
self.performSegue(withIdentifier: "SegueID", sender: indexPath)
}
现在访问prepareForSegue
中的indexPath。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "SegueID" {
let nextVC = segue.destination as! DestinationVC
if let indexPath = sender as? IndexPath,
let cell = self.tableView.cellForRow(at:indexPath) as? CustomCell {
//access your cell here
}
}
}