2010-05-19 7 views
0

J'ai vérifié en imprimant la valeur du cell.textlable.text dans chaque itération de la boucle chaque fois que la valeur de celui-ci est comme je veux, mais comme le temps de sortie sur le simulateur la valeur est la même pour chaque ligne de cellule.obtenir la même valeur dans chaque cellule de la vue de table dans l'objectif-c

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

Répondre

0

Le problème est probablement cette ligne:

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

qui va boucle à travers chaque élément dans appDelegate.books. En supposant que c'est un NSArray et que ce code est à l'intérieur de votre méthode -tableView:cellForRowAtIndexPath:, remplacez cette ligne et l'autre avec les éléments suivants:

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

(Ceci, bien sûr, suppose que les numéros de ligne correspondent aux numéros d'index dans le tableau Si ce n'est pas le cas, ajustez pour correspondre.)

Questions connexes