indexPathForRowAtPoint.row 始终为 tableView 中的每个单元格返回零
indexPathForRowAtPoint.row is always returning zero for every cell in a tableView
我有 tableView 单元格,其中包含一些自定义视图。触摸自定义视图时,我需要存储触摸视图所在单元格的 indexPath.row 。这就是我目前获取 indexPath 的方式:
@IBAction func bulletGroupPressed(sender: AnyObject) {
let center = sender.center as CGPoint
let indexPath = self.exercisesTableView.indexPathForRowAtPoint(center)!
self.exercisesTableView.selectRowAtIndexPath(indexPath, animated: false, scrollPosition: UITableViewScrollPosition.None)
println(indexPath.row)
}
我怀疑它与 indexPath 行上的 !
有关,但我不确定它到底是什么。为什么 indexPath.row 总是在每个单元格上给我零?
我无法在swift中给你一个编码答案,但该点需要在table的坐标系中说明。如您所见,中心在发件人父级的坐标系中说明,可能是 table 视图单元格。使用方法convertPoint:toView:固定坐标系
或者,您可以考虑创建一种类似于显示的方法 in my answer to this question。从任何视图(在您的情况下,发送者),它将沿着视图层次结构向上移动到第一个 UITableViewCell 并报告该单元格的索引路径。
我有 tableView 单元格,其中包含一些自定义视图。触摸自定义视图时,我需要存储触摸视图所在单元格的 indexPath.row 。这就是我目前获取 indexPath 的方式:
@IBAction func bulletGroupPressed(sender: AnyObject) {
let center = sender.center as CGPoint
let indexPath = self.exercisesTableView.indexPathForRowAtPoint(center)!
self.exercisesTableView.selectRowAtIndexPath(indexPath, animated: false, scrollPosition: UITableViewScrollPosition.None)
println(indexPath.row)
}
我怀疑它与 indexPath 行上的 !
有关,但我不确定它到底是什么。为什么 indexPath.row 总是在每个单元格上给我零?
我无法在swift中给你一个编码答案,但该点需要在table的坐标系中说明。如您所见,中心在发件人父级的坐标系中说明,可能是 table 视图单元格。使用方法convertPoint:toView:固定坐标系
或者,您可以考虑创建一种类似于显示的方法 in my answer to this question。从任何视图(在您的情况下,发送者),它将沿着视图层次结构向上移动到第一个 UITableViewCell 并报告该单元格的索引路径。