0
我正在构建一个聊天应用程序,在该应用程序中,我必须将tableview
滚动到底部以显示最近的消息。ios - UITableView加载时冻结
我在做什么的,我就用下面的代码滚动可见矩形:
- (void)tableViewScrollToBottomAnimated:(BOOL)animated {
// return;
if (!_tableViewShouldScroll) {
return;
}
NSInteger numberOfSections = [self.tableView numberOfSections];
if (numberOfSections > 0) {
NSInteger numberOfRows = [self.tableView numberOfRowsInSection:numberOfSections - 1];
if (numberOfRows > 0) {
CGRect footer = [self.tableView rectForFooterInSection:numberOfSections - 1];
[self.tableView scrollRectToVisible:footer animated:animated];
}
}
_tableViewShouldScroll = !_tableViewShouldScroll;
}
它向下滚动得很好,但冻结了第二经历的最后一个单元格,而当视图加载首次。在连续调用时,此方法工作正常。
PS。我在viewdidappear
中调用滚动方法。
任何帮助在这里将不胜感激。
我认为有问题的cellForRow方法导致此问题 –