我注意到一个奇怪的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]; });
在我的情况下,添加一个小延迟.