批量获取数据&将它存储在NSMutableArray中以在iphone中的UITableView中显示它

时间:2012-04-02 14:03:08

标签: iphone ios uitableview nsmutablearray

我如何一次从20个记录中分批获取地址簿中的数据&在表视图中显示20条记录。当获取新的20条记录时,我想将它添加到现有的数组中。重新加载数据。我怎样才能做到这一点?感谢

1 个答案:

答案 0 :(得分:1)

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

- (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
}

在您的代码中您检查webserivce成功的位置添加以下行以重新加载表

[yourTable reloadData];

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