Ios 滚动时对UITableViewCells重新排序

Ios 滚动时对UITableViewCells重新排序,ios,objective-c,swift,uitableview,Ios,Objective C,Swift,Uitableview,我在使用静态单元格时遇到了一个问题,UITableViewController,即每次向下或向上滚动时,所创建的单元格都会添加到最底层的深度,因此如果该单元格的视图大于单元格大小,则该视图将被下一个单元格覆盖 我想在用户按下info按钮时显示工具提示,并且工具提示肯定会大于单元格大小,因此它将被下一个单元格覆盖 我用于工具提示您试图在哪个视图中显示AMOPTIP?运行了一个快速测试,这似乎有效(在UITableViewController类中): 编辑:哎呀,忘记考虑滚动偏移-修复。。。哦 您

我在使用静态单元格时遇到了一个问题,
UITableViewController
,即每次向下或向上滚动时,所创建的单元格都会添加到最底层的深度,因此如果该单元格的视图大于单元格大小,则该视图将被下一个单元格覆盖

我想在用户按下info按钮时显示工具提示,并且工具提示肯定会大于单元格大小,因此它将被下一个单元格覆盖


我用于工具提示

您试图在哪个视图中显示AMOPTIP?运行了一个快速测试,这似乎有效(在UITableViewController类中):


编辑:哎呀,忘记考虑滚动偏移-修复。。。哦

您能解释一下为什么要添加tableView.contentOffset.y来计算工具提示将指向的框架吗?
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

    let rectOfCell = tableView.rectForRow(at: indexPath)
    let rectOfCellInSuperview = tableView.convert(rectOfCell, to: tableView.superview)
    popTip.showText("test \(indexPath)", direction: .down, maxWidth: 200, in: self.view, fromFrame: CGRect(x: rectOfCellInSuperview.size.width / 2, y: rectOfCellInSuperview.origin.y + tableView.contentOffset.y + rectOfCellInSuperview.size.height / 2, width: 1, height: 1))

}