1

我在如何在表格视图中重新加载数据方面遇到困难,例如,我正在从服务获得响应,直到计数 10。现在,如果计数大于 10,我需要获取额外的数据并将该数据重新加载到表格视图中。为了获得更多数据,我需要实施服务。任何人都可以在这方面提供帮助。希望了解我的问题,如果有任何错误,请见谅。感谢帮助。

4

4 回答 4

4

在您设置行的以下委托中,添加额外的一行

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return yourMutableArray.count+1;
}

以下委托告诉您当前正在创建哪个单元格。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

在此您可以添加一个检查条件,例如

if(indexPath.row > yourMutableArray.count)
{

  // This means you are at the end of your table
  // Call your webservice here and append the next set of data into the yourMutableArray
  // You can also show an activity indicator over the extra cell here, Indicating the loading of new data
   [self performSelector:@selector(getDataFromWebservice) withObject:nil afterDelay:1.0];
}
else
{
  // Do your cell settings here
}

在您的代码中某处您正在检查您的网络服务是否成功,添加以下行以重新加载表格

[yourTable reloadData];

确保将新数据附加到 MutableArray 中,否则表将仅显示来自 web 服务的最新数据。希望对你有帮助。

于 2012-12-03T08:52:43.727 回答
1

你可以在这里看到你的“加载更多”是如何UITableView工作的

http://www.cocoacontrols.com/platforms/ios/controls/stableviewcontroller

于 2012-12-03T08:11:28.417 回答
0

当 cellForRowAtIndexPath 中的 count 大于 10 时,nil service Array,重新初始化它并添加来自服务调用的新数据值,然后重新加载 tableView。我想这会对你有所帮助。如果你还有问题。告诉我

于 2012-12-03T07:38:14.097 回答
0

非常感谢您的所有回答,他们也为我提供了其他方面的帮助。我通过为 tableview 添加页脚视图来解决这个问题,在页脚视图上我添加了按钮,最后在按钮操作中我调用了服务以获取更多数据,然后数据将在 [tableView reloadData 的帮助下重新加载新数据] 方法。希望这可能有助于其他人在这种情况下。

于 2012-12-03T13:21:55.903 回答