问题描述
我有一个 UITableView
,当点击每个单元格时,它会加载详细信息页面,其中名称和副标题是从 tableview 单元格名称和副标题加载的。
我已经完成了以下操作
- 声明了一个
var
类型的行,在 didSelectRowAt 方法中,Int
被传递给这个变量
2.Destination 有另一个变量 rownum,它被赋值为
indexPath
在
`destination1.rownum = row`
方法
我的问题是,当我单击第一个单元格时,rownum 的值 = 0 但这保持不变,在下一个单元格单击时,这会显示第 0 个值本身。
同样它只显示以前的值
一旦加载了所有这些值,我如何重置这个 rownum/ 行?
解决方法
您不需要额外的变量。
-
如果 segue 的来源是 cell,那么在
获得索引路径sender
参数中传递该单元格,您可以使用let indexPath = tableView.indexPath(for: sender as! UITableViewCell)!
-
如果 segue 的来源是 controller 并且您在
获取performSegue
中调用didSelectRow
传递indexPath
参数中的sender
你自己。然后用prepare(for
中的索引路径let indexPath = sender as! IndexPath
如果只有一个 segue 强制解开这些值就可以了,因为 segue 是硬连接。如果有多个转场,您最好安全地打开 sender
。