2010-01-17 10 views
0

J'ai un UITableView avec des cellules qui sont remplies avec les objets d'un NSArray. J'utilise le MGTwitterEngine pour obtenir des Tweets des utilisateurs. Je veux montrer ces tweets dans le TableView. Voici la méthode qui est appelée lorsque le MGTwitterEngine a reçu tous les tweets (« Namen » et « Nachricht » sont NSArrays):Je ne peux pas remplir les cellules de mon UITableView avec un NSArray (Normalement cela fonctionne toujours, mais pas dans le cas)

- (void)statusesReceived:(NSArray *)statuses forRequest:(NSString *)connectionIdentifier 
     { NSLog(@"Got statuses for %@:\r%@", connectionIdentifier, statuses); 
     NSDictionary *userDict = [statuses valueForKey:@"user"]; 
     namen = [[NSArray alloc] initWithObjects: [userDict valueForKey:@"name"], nil]; 
     nachricht = [statuses valueForKey:@"text"]; 
     NSLog(@"%@", namen); 
     NSLog(@"%@", nachricht); 
     [table reloadData]; 
    } 

Alors Je l'ai fait pour remplir les cellules avec les noms des Twitter utilisateurs:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { 
    return [nachricht count]; 
} 

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

    static NSString *CellIdentifier = @"Cell"; 
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) { 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease]; 
    } 
NSUInteger row = [indexPath row]; 

cell.textLabel.text = [arryData objectAtIndex:indexPath.row]; 
    return cell; 
} 

Malheureusement, les application se bloque chaque fois que la table est rechargés: [table reloadData];. Je sais que le NSArray a toutes les bonnes valeurs, parce que NSLog me le montre. J'ai essayé aussi de créer un autre NSArray, comme ça:

arryData = [[NSArray alloc] initWithObjects:@"iPhone",@"iPod",@"MacBook",@"MacBook Pro",nil]; 

Et j'écrit cela dans le cellForRowAtIndexPath-Methode et et tout a bien fonctionné. Pourquoi ne fonctionne-t-il pas avec le "namen" -NSArray?

Répondre

1

NSArray est probablement en cours de publication - avez-vous vérifié ce qu'il y a à l'adresse mémoire?

+0

Oh merci. J'ai juste oublié d'écrire [namen retain]. – Flocked