我面临着一种好奇的UITableView
行为,我不知道这是从哪里来的。
我构建了一个非常简单的单视图IOS8 Swift应用程序,其中第一个ViewController
内部有一个UITableView
和一个自定义Image单元。当我点击一个单元格时,它会查看我的SecondViewController
。
我的UITableView委托和数据源连接到第一个ViewController。 一切都在工作,除非我点击一个单元格,有时我必须点击两次才能触发Segue。
这是我的didSelectRowAtIndexPath
功能:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
println("You clicked on \(indexPath.row) row")
self.performSegueWithIdentifier("homeToDetail", sender:self)
}
我的打印始终返回正确的indexPath。 它是视图层次结构问题还是其他什么?
谢谢JD
答案 0 :(得分:10)
试试这个。
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
dispatch_async(dispatch_get_main_queue(), {
self.performSegueWithIdentifier("homeToDetail", sender:self)
})
}
我认为这是iOS 8中的一个错误。 UITableViewCell selection Storyboard segue is slow - double tapping works though
答案 1 :(得分:1)
您必须致电[tableView deselectRowAtIndexPath:indexPath animated:YES];
来解决此问题