UITableview返回不正确的索引路径行[重复]
Posted
技术标签:
【中文标题】UITableview返回不正确的索引路径行[重复]【英文标题】:UITableview returning incorrect index path row [duplicate] 【发布时间】:2019-02-19 18:39:44 【问题描述】:我有一个非常简单的 5 行表格设置,用于设置屏幕。每当单击第一个单元格时,它会突出显示但不调用 didselectrow。如果我单击不同的行,该行将调用 did select 函数但返回不正确的行。然后我可以单击第一行,它会返回但也有不正确的行。我在项目中设置了几个与此类似的表,它们没有这种行为。单元格正确突出显示,所以我认为我没有布局/视图问题。我没有任何约束警告,当我使用视图调试器时,我没有遇到任何覆盖表格单元格的视图。感谢所有帮助!
let settingsArray:[String] = ["Notifications","Account","bar","Help","Privacy Policy"]
extension SettingsViewController: UITableViewDataSource,UITableViewDelegate
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
return settingsArray.count
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
print("\(indexPath.row) setting \(settingsArray[indexPath.row])")
if settingsArray[indexPath.row] != "bar"
let cell = tableView.dequeueReusableCell(withIdentifier: "settingOption") as! SettingsOptionCell
cell.configure(setting: settingsArray[indexPath.row])
self.settingsTable.rowHeight = 65
cell.isUserInteractionEnabled = true
return cell
else
let cell = tableView.dequeueReusableCell(withIdentifier: "settingBar")
self.settingsTable.rowHeight = 70
cell?.isUserInteractionEnabled = false
return cell!
func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath)
print("clicked \(indexPath.row)")
【问题讨论】:
【参考方案1】:替换
func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath)
与
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
【讨论】:
我从未感到如此愚蠢!!!感谢第二双眼睛! 该死的,我也遇到了同样的问题.. 花了 3 个小时才弄清楚出了什么问题!!非常感谢以上是关于UITableview返回不正确的索引路径行[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何为uitableview的所有行和所有部分创建索引路径?