如何在iOS下创建实时UITableView?
我想,我想创建连接到用JAVA编写的服务器的应用程序。 POST请求下的服务器返回带有数据(JSON格式)的映射表。问题是,数据可能非常大(大约100000个recods)。我已经在服务器端实现了部分返回数据(当POST有offset和size params时,服务器将数据从offset返回到(offset + size)和数据总数)。
问题是我不知道如何用iOS实现它。
我知道如何让UITableView使用从服务器下载的数据,但我不知道如何让UITableView使用部分数据:例如:输入到视图我只下载100行表格100000,当时用户向下滚动(例如到80行)我下载下一部分数据。我的意思是我不想在内存中存储整个100000行,但只能在表视图中显示200行。当用户滚动到表格的末尾时,在memmory中我应该有从99800到100000的行
答案 0 :(得分:1)
当用户滚动tableview
时,如果到达最后一个单元格,我们将检查是否到达了最后一个单元格,我们将下载dataset
下一个单词:
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{
NSInteger sectionsAmount = [tableView numberOfSections];
NSInteger rowsAmount = [tableView numberOfRowsInSection:[indexPath section]];
if ([indexPath section] == sectionsAmount - 1 && [indexPath row] == rowsAmount - 1) {
// This is the last cell in the table
//Here you can download the next part of dataset and reload the tableView.
}
}
希望这会对您有所帮助。