重新加载uitableview后滚动表格视图
在我的应用程序中,我想将单元格追加到当前的tableview中,并在单元格全部追加后滚动到第一个添加的单元格。 我通过调用附加到堆栈并调用[tableview reloadData]来完成附加代码。 但是,我想知道是否有一个由uitableview发送的委托或通知,我可以使用它来指示何时表已重新加载,以便我可以滚动到所选内容。 我原本以为viewDidAppear会被调用,但事实并非如此。 有什么建议么?
您可以删除reloadData
并使用insertRowsAtIndexPaths:withRowAnimation:
相反,可以添加额外的行,然后可以使用scrollToRowAtIndexPath:atScrollPosition:animated:
来滚动到某一行。 以这种方式添加行在我看来有点“更清洁”,而不是仅仅调用reloadData,它可能也更快。
当使用insertRowsAtIndexPaths:withRowAnimation:
并且你添加的行不可见时,它们将不会被“加载”,一旦它们使用滚动方法滚动到视图中,它们将被“加载”。
关于reloadData方法完成后的通知,我很肯定没有可用的通知。 UITableView的唯一通知是UITableViewSelectionDidChangeNotification
。
上一篇: Scrolling the table view after reloading uitableview
下一篇: How to perform a cell deselection when a user returns to a table view?