connectionDidFinishLoading - как заставить обновить UIView?

Я могу скачать файл ZIP из Интернета. Постобработка выполняется в connectionDidFinishLoading и работает нормально, за исключением того, что элементы UIView не обновляются. Например, я установил statusUpdate.text = @ "Распаковка файла " но это изменение не появляется до тех пор, пока не завершится connectionDidFinishLoading. Аналогично, объекты UIProgressView и UIActivityIndicatorView не обновляются до тех пор, пока этот метод не завершится.

Есть ли способ принудительно обновить UIView из этого метода? Я попытался установить [self.view setNeedsDisplay], но это нет работа. Кажется, он работает в главном потоке. Все остальные команды здесь работают просто отлично - единственная проблема - обновление пользовательского интерфейса.

Спасибо!

Обновление: вот код, который НЕ обновляет UIVIEW:

-(void)viewWillAppear:(BOOL)animated {
    timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(processUpdate:) userInfo:nil repeats:YES];
    downloadComplete = NO;
    statusText.text = @"";

}

-(void)processUpdate:(NSTimer *)theTimer {
    if (! downloadComplete) {
        return;
    }

    [timer invalidate];
    statusText.text = @"Processing update file."; 
    progress.progress = 0.0;
        totalFiles = [newFiles count];
    for (id fileName in newFiles) {
        count++;
            progress.progress = (float)count / (float)totalFiles;
        // ... process code goes here ...
         }
}

В конце завершения процесса я устанавливаю downloadComplete = YES. Это строит и работает без ошибок и работает как задумано, за исключением того, что ничего не обновляется в UIVIEW до тех пор, пока не завершится processUpdate, тогда все обновится сразу.

Спасибо за вашу помощь до сих пор!

Ответы на вопрос(5)

Ваш ответ на вопрос