UITableView появляется перед получением данных от connectionDidFinishLoading

У меня есть ситуация, когда моя таблица загружается до получения данных из моего веб-сервиса.

Когда я отлаживаю его, я вижу, что мой NSMutableArray содержит 123 объекта, но он не отражается в таблице.

Это мой метод connectionDidFinishLoading :

-(void)connectionDidFinishLoading:(NSURLConnection *)conn{
myData = [[NSString alloc] initWithData:xData encoding:NSUTF8StringEncoding];
SBJsonParser *jParser =  [SBJsonParser new];
NSError *error = nil;
NSArray *jsonObjects = [jParser objectWithString:myData error:&error];
NSMutableArray *books = [[NSMutableArray alloc] init];

for(NSDictionary *dict in jsonObjects)
{
    Book *b = [Book new];
    b.bookName =[dict objectForKey:@"name"];
    b.published = [dict objectForKey:@"published"];
    [books addObject:b];

}
self.bookArray = books;
[self.tableView reloadData];
NSLog(@"myData = %@",myData);
}

Если я отлаживаю это, я получаю свои jsonObjects и заполняю свою коллекцию. Но я замечаю, что мой стол все еще пуст.

Чтобы уточнить, это мой метод tableView :

(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath  *)indexPath{
...
Book *b = (Book *)[self.bookArray objectAtIndex:[indexPath row]];
cell.textLabel.text = b.bookName;
....

Может ли кто-нибудь помочь мне с тем, что мне не хватает?

5
задан palacsint 21 December 2011 в 21:58
поделиться