2011-02-07 84 views
12

這可能嗎?重新加載只有可見的單元格才能更有效。reloadData只在tableView可見單元格

謝謝你的時間。

+0

如何提供一些背景?什麼語言/框架/庫/任何東西? – 2011-02-07 16:02:02

+0

對不起。我用objetive-C語言(iOS SDK 4.0)編程 – Samui 2011-02-07 16:06:28

回答

23

這就是表視圖默認情況下的工作方式。 UITableView類在它們即將出現在屏幕上之前不會加載單元格,即使您致電reloadData

+0

謝謝jlehr,你是對的。我忘了那個細節! – Samui 2011-02-07 16:14:45

8

試試這個,你可以重新加載使用reloadRowsAtIndexPaths:

[self.tableView beginUpdates]; 
[self.tableView reloadRowsAtIndexPaths:[self.tableView indexPathsForVisibleRows] 
       withRowAnimation:UITableViewRowAnimationNone]; 
[self.tableView endUpdates]; 
5

要重新加載的tableview可見細胞雨燕3.0的tableview的任何細胞:

pTableView.beginUpdates() 

pTableView.reloadRows(at: 
pMessagesTableView.indexPathsForVisibleRows!, with: .none) 

pTableView.endUpdates()