Загрузка данных после загрузки из NSThread в другой класс - PullRequest
0 голосов
/ 07 апреля 2011

В моем AppDelegate, во время заставки, я запускаю NSThread, который загружает данные из Интернета. По окончании NSThread я удаляю заставку.

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

viewWillAppear

и

viewDidLoad

вызывается во время NSThread ... и приложение может аварийно завершить работу, потому что данные загружены не полностью!

Это мой код (в appdelegate.m)

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {   
      //...
      //... 
      NSThread* parse_thread = [[NSThread alloc] initWithTarget:self selector:@selector(carica_dati)  object:nil];
     [parse_thread start];
     return YES;
}

-(void)carica_dati{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
   [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
   //download data, then remove the splash screen
   [pool release];
   [NSThread exit];
}

как я могу это решить? Можно ли вызвать метод, когда закончить NSThread (но мне нужно вызвать его в другом классе, класс моего зрения)?

Спасибо!

1 Ответ

0 голосов
/ 07 апреля 2011

;)

добавить основной вид [self.windows addSubview: tabbar.view] после nsthread!

;)

...