添加新行后,UITableView scrollToRow不再适用于iOS 11

前端之家收集整理的这篇文章主要介绍了添加新行后,UITableView scrollToRow不再适用于iOS 11前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我注意到一个奇怪的UITableView行为,它似乎只出现在iOS 11设备上.

在插入新行之后(更改数据源然后调用reloadData,UITableView在调用scrollToRow或scrollToBottom()方法时不会滚动到该行.

在iOS 10或更早版本上执行某些操作时,它可以完美地工作,并且UITable会像它应该的那样滚动.

谢谢!

解决方法

dispatch_after(dispatch_time(DISPATCH_TIME_NOW,(int64_t)(0.01 * NSEC_PER_SEC)),dispatch_get_main_queue(),^{

    [self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionBottom animated:YES];
});

在我的情况下,添加一个小延迟.

原文链接:https://www.f2er.com/iOS/333257.html

猜你在找的iOS相关文章