2015-10-05 86 views
4

我正在使用UISegmentedControl,它改变了UITableViewCell的内容。段更改后,我需要重新加载单元格来更新它的高度。我通过以下方式拨打:无UITableView滚动重新加载UITableViewCell

[self.tableView reloadRowsAtIndexPaths:@[self.segmentIndexPath] withRowAnimation:UITableViewRowAnimationNone]; 

但是,这会使UITableView滚动到顶部。无需滚动表格就可以做到这一点的最佳方式是什么?

+0

这行代码不会使表视图滚动。你必须做一些让表格视图回滚到顶部的东西。 – rmaddy

+0

@rmaddy很容易就是这样。我是这个代码库的新手,并且UITableView中有很多。任何具体的事情,我可以在寻找这将导致滚动到顶部? – jherg

+0

寻找对'reloadData'的调用或显式滚动表视图的任何调用。请记住'UITableView'扩展了'UIScrollView'。 – rmaddy

回答

-1

尝试使用[self.tableView visibleCells],然后找到这个细胞并改变

+0

OP已经具有需要重新加载的一行的索引路径,并且OP显示只重新加载一行的一行代码。 – rmaddy

+0

一年,我同意你的意见,我的建议是错的 –

+0

没问题。您可以删除答案或根据需要更新答案。 – rmaddy