Почему мои объекты интерфейса реагируют не по порядку? - PullRequest
0 голосов
/ 03 сентября 2011

У меня есть IBAction для нажатия кнопки:

- (IBAction)importButtonClicked:(id)sender 

И я хочу, чтобы произошла серия событий:

[_progressLabel becomeFirstResponder]; // I tried this but to no effect
_progressLabel.stringValue = BEGIN_IMPORT_STRING;
[_importButton setEnabled:FALSE];
_fileField.stringValue = @"";
[_progressIndicator startAnimation:nil]; 

Но в конечном итоге анимация _progressIndicator происходит до появления текста _progressLabel. И часто текст не будет отображаться, пока анимация _progressIndicator не остановится. Как мне это исправить?

1 Ответ

2 голосов
/ 03 сентября 2011

Поместите выполняемую вами работу, которая требует времени (я полагаю, для этого нужен индикатор прогресса) в отдельном потоке. Вам не нужно делать это вручную в Какао, но вместо этого используйте Grand Central Dispatch (GCD), NSOperationQueue или такую ​​доступную конструкцию. Вы найдете много ресурсов на GCD.

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