Ios 返回时自定义tableview单元格未取消选择?
我创建了一个自定义表视图单元格。当用户按下单元格时,我添加了一个黑色透明覆盖图像。但是,当您返回到tableview时,该单元格仍然处于选中状态,效果非常好。这是我的密码Ios 返回时自定义tableview单元格未取消选择?,ios,swift,xcode,tableview,Ios,Swift,Xcode,Tableview,我创建了一个自定义表视图单元格。当用户按下单元格时,我添加了一个黑色透明覆盖图像。但是,当您返回到tableview时,该单元格仍然处于选中状态,效果非常好。这是我的密码 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let selectedCell: PackCell = tableView.cellForRow(at: indexPath)! as! PackCell
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let selectedCell: PackCell = tableView.cellForRow(at: indexPath)! as! PackCell
selectedCell.highlightImage.isHidden = false
performSegue(withIdentifier: segueIdentifiers[indexPath.row], sender: self)
tableView.deselectRow(at: indexPath, animated: true)
}
也许你回来的时候也应该隐藏你的highlightImage
selectedCell.highlightImage.isHidden = true
也许你回来的时候也应该隐藏你的highlightImage
selectedCell.highlightImage.isHidden = true
highlightImage
是您的自定义叠加吗?@KarloA.López是highlightImage
是您的自定义叠加吗?@KarloA.López是我的cellForRowAt函数中有这个。我应该把它放在别的地方吗?然后你可以试试tableView。当你回来的时候,视图中的reloadData()会出现。这将更新您的tableview并调用CellForRow,这样就可以了!还有一个问题(将当前问题标记为已回答)。实际上,我把这段代码放在了didHighlightRowAt中,这样它只会在高亮显示时出现。但是,当我按住一个单元格并开始滚动,然后放开时,它不会执行该顺序,只会突出显示该单元格。有解决方法吗?当您触摸手机并按住时,它将调用didHighlightRowAt,而不是didSelectRowAt。所以,这就是为什么你看到你的单元格高亮显示,但它不执行segue。您可能希望在didUnhighlightRowAt中隐藏高亮显示图像。希望这能回答您的问题。它执行顺序,但前提是当单元格高亮显示时我不滚动。我的cellForRowAt函数中有这个。我应该把它放在别的地方吗?然后你可以试试tableView。当你回来的时候,视图中的reloadData()会出现。这将更新您的tableview并调用CellForRow,这样就可以了!还有一个问题(将当前问题标记为已回答)。实际上,我把这段代码放在了didHighlightRowAt中,这样它只会在高亮显示时出现。但是,当我按住一个单元格并开始滚动,然后放开时,它不会执行该顺序,只会突出显示该单元格。有解决方法吗?当您触摸手机并按住时,它将调用didHighlightRowAt,而不是didSelectRowAt。所以,这就是为什么你看到你的单元格高亮显示,但它不执行segue。您可能希望在didUnhighlightRowAt中隐藏高亮显示图像。希望这能回答你的问题。它执行顺序,但前提是当单元格高亮显示时我不滚动。