tableView重新加载中的IndexPath问题

时间:2014-09-04 02:40:45

标签: ios objective-c uitableview

我正面临这样的麻烦,让我们走吧:

我有一个tableView,它已经加载了一个数组数组,但是,当我更新那个tableView(重新加载)时,这个过程已经完美地工作了,即使使用相同的数组并且滚动被定位在列表的一半,或者最后,似乎索引被错误地加载,也就是说,当加载单元格时,加载另一个单元格的信息。另一方面,如果滚动位于tableview的顶部,即在第一个单元格中,即使在重新加载过程中,也不会出现此问题,请参阅我的代码:

非常感谢!

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

static NSString *CellIdentifier = @"cell_aux";

clsTableViewCell *cell = (clsTableViewCell*) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil)
{
    NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"cell_aux" owner:self options:nil];
    cell = (clsTableViewCell *)[nib objectAtIndex:0];
}

[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];

arInfos = [[NSArray alloc] initWithArray:[[arMain objectAtIndex:indexPath.row]                  componentsSeparatedByString:@"|"]];

[arInfosAll addObject:arInfos];

NSURL *imgURL = [NSURL URLWithString:[arInfos objectAtIndex:4]];

UIImage *Noimg=[UIImage imageNamed:@"NoImage.png"];
cell.img.image = Noimg;


cell.lblNome.text = [arInfos objectAtIndex:1];
cell.lblEndereco.text =[arInfos objectAtIndex:2];

NSURLRequest* request = [NSURLRequest requestWithURL:imgURL];
[NSURLConnection sendAsynchronousRequest:request
                                       queue:[NSOperationQueue mainQueue]
                           completionHandler:^(NSURLResponse * response,
                                               NSData *imgData,
                                               NSError * error)
    {
                               if (!error)
                               {
                                   UIImage *img = [UIImage imageWithData:imgData];
                                   cell.img.image = img;
                               }

                           }];
    }

      return cell;
  }

0 个答案:

没有答案