title: Swift 3.0 multiple selection with select all cell
body: <p>I have added data in table view and I have manually added "select all" option to the list at first position, now when the user selects the first option which is 'select all' then the person manually option "Select all" is not selected. Select all, click then work all person or deselect working but signal selection all the person not working "Select all"
  I have tried the code below but it's not working so can any one help me to solve this? </p>
  
  <p><a href="https://i.stack.imgur.com/EG2tG.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/EG2tG.png" alt="enter image description here"></a></p>
  
  <pre><code>var unchecked:Bool = true
          func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -&gt; UITableViewCell {
              // create a new cell if needed or reuse an old one
              let cell = ObjTableview.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! SelectUserCell
              // set the text from the data model
               cell.selectionStyle = UITableViewCellSelectionStyle.none
              cell.lblStudentName.text = getStudentName[indexPath.row]
  
              if UnAll == "unselect" {
                  if indexPath.row == 0 {
                      cell.btnCheckbox.setImage(UIImage(named: "unSelectedItem"), for: .normal)
  
                  }
                  if indexPath.row == Int(selectedNumber) {
                      cell.btnCheckbox.setImage(UIImage(named: "unSelectedItem"), for: .normal)
  
                  }
                  if indexPath.row == Int(unSelectNumber) {
                      //var j = "\(i)"
  
                      cell.btnCheckbox.setImage(UIImage(named: "selectedItem"), for: .normal)
  
                  }
  
              }else
              {
              if(unchecked){
  
                  cell.btnCheckbox.setImage(UIImage(named: "unSelectedItem"), for: .normal)
  
              }
              else{
  
                  cell.btnCheckbox.setImage(UIImage(named: "selectedItem"), for: .normal)
  
                }
              }
  
              return cell
          }
          var UnAll = ""
          var selectedNumber = ""
          var unSelectNumber = ""
          var checkselect:Bool = true
  
          func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
  
              UnAll.removeAll()
              selectedNumber.removeAll()
              unSelectNumber.removeAll()
              if(indexPath.row == 0){
  
                  btnCheckBoxClick(sender: UIButton())
  
              }else
              {
              UnAll = "unselect"
                  btnCheckBoxClick(sender: UIButton())
                  if checkselect {
                      selectedNumber = "\(indexPath.row)"
                      checkselect = false
                  }else
                  {
                    unSelectNumber = "\(indexPath.row)"
                      checkselect = true
                  }
  
                  print("the selected index is : \(indexPath.row)")
              }
  
          }
  
          @IBAction func btnCheckBoxClick(_ sender: Any) {   
  
              if(unchecked){
  
                  unchecked = false
              }
              else{              
                  unchecked = true
              }
              ObjTableview.reloadData()
           }
  </code></pre>