代码之家  ›  专栏  ›  技术社区  ›  marc

Swift tableView scroll to row为my tableView的内容偏移值提供了错误的值

  •  0
  • marc  · 技术社区  · 7 年前

    在我的应用程序中,我有一个tableview,其中显示了大约400种产品。我面临的问题是,当以编程方式滚动到一节的开头时:

    @objc func CategoryPress(_ button: UIButton) {
    
        let indexPath = NSIndexPath(item: 0, section: button.tag)
        tableView.scrollToRow(at: indexPath as IndexPath, at: UITableViewScrollPosition.top, animated: false)
    
    }
    

    我的tableView得到了一个错误的值。内容偏移量。在我再次到达表视图的顶部之前,这一直是不正确的。 只有当滚动到远离起始位置的位置时,才会出现此问题 .

    手动滚动时,我没有遇到这个问题,我的所有值都是准确的。

    我试图滚动到一个特定的y按钮按下,但我没有找到一个方法来做到这一点。

    任何获得该职位的解决方案或替代方案都将不胜感激。

    1 回复  |  直到 7 年前
        1
  •  0
  •   marc    7 年前

    我找到了一个可行的替代方案:

        @obj func CategoryPress(_ button: UIButton) {
    
        let indexPath = NSIndexPath(item: 0, section: button.tag)
        var offset: CGPoint = tableView.contentOffset
        offset.y = CGFloat(Ycoordinates[indexPath.section])
        tableView.setContentOffset(offset, animated: true)
    
    }