搜尋

首頁  >  問答  >  主體

ios - 在使用reloadSection这个方法的时候发生contentoffset变化的问题

在UI上有一个是action之后需要刷新tableview section的过程,我使用了下面这个方法:
整个tableview的高度使用了UITableViewAutomaticDimension和estimatedRowHeight,

- (void)reloadSections:(NSIndexSet *)sections withRowAnimation:(UITableViewRowAnimation)animation NS_AVAILABLE_IOS(3_0);

但是使用之后,tableview的contentoffset会发生变化,也就是说,整个tableview会向上滑动一下,暂时还理不出问题的头绪,不知道有没有哪位遇到过这种bug,希望能解答一下。

伊谢尔伦伊谢尔伦2772 天前829

全部回覆(1)我來回復

  • ringa_lee

    ringa_lee2017-04-18 09:37:29

    1.可以嘗試使用reload
    2.可以嘗試下提前記錄offSet

    GPoint offset = tableView.contentOffset;
    - (void)reloadSections:(NSIndexSet *)sections withRowAnimation:(UITableViewRowAnimation)animation; //用UITableViewRowAnimationNone
    [tableView layoutIfNeeded]; // 强制更新
    [tableView setContentOffset:offset];

    回覆
    0
  • 取消回覆