UITableView单击一个单元格会显示另一个单元格详细信息

时间:2019-06-10 14:58:32

标签: ios swift uitableview

我有一个带有一些单元格的表格视图。例如,名为“狗”,“猫”和“鱼”的单元格。当我单击“狗”时,它显示“狗”单元格详细信息。然后,当我单击“猫”单元格时,它也会显示“狗”单元格的详细信息,并显示与“鱼”相同的内容。我发现,当我在某个单元格上滑动时,不会发生这种情况。例如,如果我在单击“猫”单元格之前将其滑过,它将显示“猫”详细信息。但是我不希望这样解决。为什么会发生以及如何解决?

这里是单击单元格时的功能:

private func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    //let selectedItem = self.memories[indexPath.row]
    let storyboard = UIStoryboard(name: "MemoryViewController", bundle: nil)
    let DvC = storyboard.instantiateViewController(withIdentifier: "AddMemoryViewController") as! AddMemoryViewController
    self.navigationController?.pushViewController(DvC, animated: true)
}

1 个答案:

答案 0 :(得分:1)

您快到了,只需要将selectedItem传递给DvC,并假设DvC具有该属性:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
   guard let selectedItem = self.memories[indexPath.row] else { return }
   let storyboard = UIStoryboard(name: "MemoryViewController", bundle: nil)
   let DvC = storyboard.instantiateViewController(withIdentifier: "AddMemoryViewController") as! AddMemoryViewController

   DvC.item = selectedItem
   self.navigationController?.pushViewController(DvC, animated: true)
}