Ios 选择tableview单元格以显示和隐藏UIView

Ios 选择tableview单元格以显示和隐藏UIView,ios,swift,tableview,Ios,Swift,Tableview,我有一个UIView,让我们称之为“iconView”,它在一个单元格中。默认情况下,它是隐藏的。我想,当用户点击单元格时,它将被显示(ishiden=false),当用户再次点击时,它将被隐藏(ishiden=true) 这是我的代码,问题是,点击后会显示,但再次点击后不会隐藏。 谢谢你的帮助 override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { switch i

我有一个UIView,让我们称之为“iconView”,它在一个单元格中。默认情况下,它是隐藏的。我想,当用户点击单元格时,它将被显示(ishiden=false),当用户再次点击时,它将被隐藏(ishiden=true) 这是我的代码,问题是,点击后会显示,但再次点击后不会隐藏。 谢谢你的帮助

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    switch indexPath.section {
    case 1:
        switch indexPath.row {
        case 1:
            if isIconViewShown  {
                iconView.isHidden = true
            }
            iconViewShown.isHidden = !iconView.isHidden
            isIconViewShown = true
        default:
            break
        }
  }

为什么要跟踪额外的变量

只需切换
iconView.ishiden

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    switch indexPath.section {
    case 1:
        switch indexPath.row {
        case 1:
            iconView.isHidden = !iconView.isHidden
            iconViewShown.isHidden = !iconView.isHidden
            // or maybe iconViewShown.isHidden = iconView.isHidden
        default:
            break
        }
    }

注意你有2个Outtts <代码> ICONVIEW显示和<代码> ICONVIEW < /代码>所以请准确地考虑哪1个问题