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