Use didSelectRowAtIndexPath or prepareForSegue method for UITableView?

前端 未结 6 525
不思量自难忘°
不思量自难忘° 2020-11-29 16:38

I\'m using storyboards and I have a UITableView. I have a segue setup that pushes from my table to the detail VC. But which method should I use to handle this? I\'ll have

6条回答
  •  长情又很酷
    2020-11-29 17:05

    When sender is UITableViewCell, you may ask UITableView to query indexPath of the cell.

        override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
            if let cell = sender as? UITableViewCell {
                let indexPath = self.tableView.indexPathForCell(cell)!
                assert(segue.destinationViewController.isKindOfClass(DetailViewController))
                let detailViewController = segue.destinationViewController as! DetailViewController
                detailViewController.item = self.items[indexPath.row] // like this
            }
        }
    

提交回复
热议问题