title: passing parameters to a Selector in Swift
body: <p>I am building an app for keeping track of reading assignments for a university course. Each ReadingAssignment has included a Bool value that indicates if the reader has finished reading the assignment. The ReadingAssignments are collected into WeeklyAssignment arrays. I want to have the user be able to touch a label and have a checkmark appear and show the assignment as completed. I would like this touch to also update the .checked property to true so I can persist the data.
  So, I am trying to have the gestureRecognizer call the labelTicked() method. This works and prints to the console. However, when I try to pass in the assignment parameter, it compiles, but crashes on the touch with an "unrecognized selector" error. I have read every topic i can find here, and haven't found the solution. They all say ":" signifies a Selector with parameters, but still no go.
  Can you see what I am doing wrong?</p>
  
  <pre><code>func configureCheckmark(cell: UITableViewCell, withWeeklyAssignment assignment: WeeklyAssignment) {
  
      let checkLabel = cell.viewWithTag(1002) as! UILabel
      checkLabel.userInteractionEnabled = true
      let gestureRecognizer = UITapGestureRecognizer(target: self, action: Selector("labelTicked:assignment"))
      checkLabel.addGestureRecognizer(gestureRecognizer)
  
  }
  
  @objc func labelTicked(assignment: WeeklyAssignment) {
  
      assignment.toggleCheckmark()
  
          if assignment.checked {
              label.text = "✔︎"
          } else {
              label.text = ""
          }
  }
  </code></pre>
  
  <p>I would also love to pass in the UILabel checkLabel so I can update it in the labelTicked() method.
  Thanks for your help.</p>