我在我的应用程序中遇到这个奇怪的问题,有时需要几秒钟(10)才能使自定义TableViewCell触发到另一个ViewController的segue。如果我在此期间点击应用中的任何其他位置,则点击会触发segue。
只有在多次选择同一个单元格时才会出现此问题。这意味着如果单击第一个单元格,转到新的ViewController,退出新的ViewController并再次单击同一个单元格,可能会出现问题。
我在这里的一个小项目中重建了这个问题,供任何善良的人尝试。 http://www.filedropper.com/customcellsegue_2
任何想法的人?
修改
对于那些不想下载应用程序的人来说,这里有一些代码。
原始ViewController
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return 100.0
}
// Number of cells in each section.
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 2
}
// Fill UITableView...
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! UITableViewCell
return cell
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
println("Selected")
}
自定义表格单元格
@IBOutlet var firstLabel: UILabel!
@IBOutlet var secondLabel: UILabel!
}
新的ViewController
@IBAction func close(sender: AnyObject) {
self.dismissViewControllerAnimated(true, completion: nil)
}
我只是将自定义单元格中的模态segue应用到新的ViewController。