tableview直接滑动到某一行的注意事项

[tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];

这个方法可以让tableView指定滑到某一行的顶部,但是有时候会失灵,比如你点击第8行,想让第8行滑到tableview的最上方,可是却发现没有滑到最上面去,这时候你又试着点击第2行,发现可以滑到tableview的最上方,这是为什么呢?难道方法有误?

方法当然不会有错,原因是你的第8行以下的内容不足以支撑tableview的高度了。这时候要检查一下你点的那一行下面还有多少内容。

如果你说你的cell是可以展开的,虽然未展开的时候内容不够了,但是展开了内容就足以填充tableview的高度了,为什么还是没有滑到tableview的最上面去呢?注意,如果你点击cell要刷新高度,需要先执行reloadRowsAtIndexPaths或者reloadData,再执行[tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES]方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容