有人可以帮我解决这个语法吗?这是协议实现:
extension ViewController: CustomCellDelegate {
func cellStateToggled(cell: CustomCell) {
guard let cellIndex = self.tableView.indexPath(for: cell) else { return }
activeIndex = activeIndex == cellIndex ? nil : cellIndex
tableView.reloadData()
}
}
我需要帮助理解的是这一行:
activeIndex = activeIndex == cellIndex ? nil : cellIndex
我理解第二部分,三元条件运算符,但我不确定第一部分是做什么的:
activeIndex = activeIndex
以及它们是如何组合在一起的?
谢谢!
为了更好地理解
activeIndex = ( activeIndex == cellIndex ) ? nil : cellIndex
这意味着如果cellIndex
等于activeIndex
则将 nil 分配给activeIndex
否则分配cellIndex
,这是对
if activeIndex == cellIndex {
activeIndex = nil
}
else
{
activeIndex = cellIndex
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句