Значения привязки какао не обновляются до конца процесса - PullRequest
0 голосов
/ 14 июня 2011

У меня есть метка NSTextField, значение которой связано с controller.status

Когда я вызываю функцию [controller someFunction], которая обновляет статус с помощью [self setStatus:@"Something"];, пользовательский интерфейс не отражает изменения, пока процесс не завершится. Статус был успешно изменен, но я использую текстовое поле в качестве статуса для пользователя, поэтому его значение будет меняться несколько раз до конца функции.

Почему пользовательский интерфейс не обновляется при каждом изменении значения статуса? Он отображается только в конце процесса с указанием статуса.

1 Ответ

1 голос
/ 14 июня 2011

Почему пользовательский интерфейс не обновляется с каждым изменение значения статуса?

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

Если у вас длительный процесс, вы должны переместить его в операцию или фоновый поток, чтобы не блокировать основной поток. Блокировка основного потока приводит к тому, что ваше приложение перестает отвечать на запросы.

...