title: How to pass callback from TableView to TableView Cell?
body: <p>I have a <code>tableview</code>.In each cell of <code>tableview</code>, there is an upload button. On Click of that button, I am using the protocol delegate mechanism to tell the TableViewVC that I need to show the file picker option. What I don't understand is how to pass callback from TableView to TableView Cell when a particular file is selected for a particular cell so that I can change visibility of a label in that cell.</p>
  
  <p>Here is my code when button in a cell is clicked</p>
  
  <pre><code>protocol FileUploadDelegate {
      func uploadFile(documentId: Int,position: Int)
  }
  
  @IBAction func uploadDocumentClicked(_ sender: Any) {
          delegate?.uploadFile(documentId: documentId,position: position)
      }
  </code></pre>
  
  <p>In my <code>TableViewVC</code> I have implemented the protocol and written all the code for file picker</p>
  
  <p>Now in the following method</p>
  
  <pre><code>func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
  
  }
  </code></pre>
  
  <p>I need to pass callback from tableView to the exact tableCell which triggered the action so that I can change visibility of a label in that cell. How can I achieve that?</p>