美文网首页iOS11
iOS11 tableView的scrollToRowAtInd

iOS11 tableView的scrollToRowAtInd

作者: BierLee | 来源:发表于2017-09-22 16:48 被阅读561次

    今天给环信聊天界面添加引导功能时,发现原本在iOS11以下能够正常运行的scrollToRowAtIndexPath:方法会偶尔失效,频率还挺高。使用如下:

    6F354F84-5B69-4B98-B7A5-9618FA809BA9.png

    方法目的是滚到tableView的最后一行,在iOS11之前系统运行正常,但11系统上始终无法滚动到正确的位置。

    最后查看了一下iOS11的新增改动点,发现iOS11关于UITableView新加了预估高度estimatedXXHeight

    iOS11 中的estimatedXXHeight由默认的 0 变成了现在的默认.AutomaticDimension,导致高度计算出错,最后导致的现象就是上拉加载更多的时候 UI 错乱、TableView视图的高度异常等一系列问题。重新置 0 即可

    _tableView.estimatedRowHeight = 0;
    _tableView.estimatedSectionFooterHeight = 0;
    _tableView.estimatedSectionHeaderHeight = 0;
    

    如上之后问题解决。

    相关文章

      网友评论

      • 念念不忘_2016:太感谢了,解决了我的问题,但是我的聊天界面还是没有办法滚动至最后一条记录,最后一天记录会被遮挡,不知道你遇到过没有
      • d5d0afe2cd5c:搞了一天了,找了很多资料最后在这里找到,谢谢打个
      • 4e63e3b216ca:我添加了你的代码,可以滚动,但是不是滚动到我指定的那行,请问怎么解决呢?
      • ifelseboyxx:感谢好人提前踩坑

      本文标题:iOS11 tableView的scrollToRowAtInd

      本文链接:https://www.haomeiwen.com/subject/yspfextx.html