这是我这个菜鸟iOS新人的第一篇文章。
原因是工作需求做一个聊天界面,当我下拉加载更多消息时,tableView总会跳回第一个cell,我尝试了不少方法,包括数据插入的方式,最后均失败,只好求助万能的谷歌,最后让我找到了解决办法,非常简单。
首先,创建一个自定义的UITableView类,在.m文件中加入以下方法
- (void)setContentSize:(CGSize)contentSize
{
if(!CGSizeEqualToSize(self.contentSize,CGSizeZero))
{
if(contentSize.height>self.contentSize.height)
{
CGPointoffset =self.contentOffset;
offset.y+= (contentSize.height-self.contentSize.height-5);
self.contentOffset= offset;
}
[supersetContentSize:contentSize];
}
让我们的tableView类更改成这个自定义的UITableView类,就会发现下拉加载更多不会跳回最顶部了。
ps:如果使用xib创建的,别忘了更改控件的class