UITableViewCell метод reloadData не работает - PullRequest
0 голосов
/ 06 мая 2011

reloadData не работает.

Код:

- (void)viewDidLoad 
 {
allOnMapButton.hidden = YES;

volLocApp = (MyAppDelegate *) [[UIApplication sharedApplication] delegate];

[self performSelectorInBackground:@selector(startParsing) withObject:nil];

total = [volLocApp.volListArray count];

[super viewDidLoad];
 }


- (void) startParsing
{
[self performSelectorOnMainThread:@selector(startIndicator) withObject:nil waitUntilDone:NO];

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];   

NSURL *url = [[NSURL alloc] initWithString:@"Link"];
NSData *data = [NSData dataWithContentsOfURL:url];

// 2 -- parsing
parser = [[MyParser alloc] init];

[parser parseXML:data];
[data release];
[parser sortTheArray];

[parser print];

[self performSelectorOnMainThread:@selector(updateTable) withObject:nil waitUntilDone:NO];
[pool release]; 

 }

 - (void) startIndicator
 {
av.hidesWhenStopped = YES;
[av startAnimating];
  }

- (void) updateTable
{
allOnMapButton.hidden = NO;
[av stopAnimating];
[myTable reloadData];   
 }

Что не так в приведенном выше коде?Метод перезагрузки не работает.Если я вернусь и вернусь к этому виду, тогда будут показаны только данные.

Ответы [ 2 ]

1 голос
/ 06 мая 2011

Убедитесь, что ваш myTable был определен через IBOutlet и правильно связан с вашим табличным представлением. Если ничего не происходит без ошибок, это обычно так.

0 голосов
/ 06 мая 2011

Вы можете опубликовать свой код в каком-нибудь git-репо? может быть несколько причин, что попробуйте setNeedsDisplay для супер просмотра вашей таблицы и вы также можете попробовать выполнить селектор в основном потоке, а не фон чтобы увидеть, есть ли различия. Обычно обновление представления происходит только в основном потоке. и это может быть проблемой

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...