在objective-c中的表视图的每个单元格中获取相同的值

时间:2010-05-19 14:29:09

标签: iphone objective-c

我通过在循环的每次迭代中打印cell.textlable.text的值来检查每次它的值是我想要的,但是作为在模拟器上输出的时间,每个值都是相同的细胞排。

my code:
       for(i=0;i<[appDelegate.books count];i++)
    {

      Book *aBook= [appDelegate.books     
     objectAtIndex:i];

       NSString *string1 =aBook.Latitude;
        NSString *trimmedString = [string1     
          stringByTrimmingCharactersInSet:[NSCharacterSet    
          whitespaceAndNewlineCharacterSet]];   
     double myDouble = [trimmedString doubleValue];

     NSString *string2=aBook.Longitude;

     NSString *trimmedString1 = [string2 
          stringByTrimmingCharactersInSet:[NSCharacterSet 
       whitespaceAndNewlineCharacterSet]];  

   double mDouble = [trimmedString1 doubleValue];

    if((((myDouble<(a+5.021777))&&(myDouble>(a-  

            8)))||((mDouble<=(b+10))&&(mDouble>=(b-10)))))  
   {

     NSString *a1=aBook.AreaName;
       NSString *b1=[a1 stringByAppendingString:@","];
       NSString *s=aBook.STREET_NAME;
       NSString *c=[b1 stringByAppendingString:s];
     cell.textLabel.text = c ;

     }      
  }
    return cell; }

1 个答案:

答案 0 :(得分:0)

问题可能就在这一行:

for(i=0;i<[appDelegate.books count];i++)

这将在appDelegate.books中循环遍历每个项目。假设这是一个NSArray并且此代码在您的-tableView:cellForRowAtIndexPath:方法中,请将该行和下一行替换为以下内容:

Book *aBook = [appDelegate.books objectAtIndex:indexPath.row];

(当然,这假设行号与数组中的索引号匹配。如果不匹配,请调整以匹配。)