2010-06-24 3 views
0

Как заблокировать поток пользовательского интерфейса без использования сон?Как заблокировать интерфейс в IPhone

Просто, чтобы быть ясным: я понимаю, что пользовательский интерфейс замерзнет для пользователя, но это идея.

Могу ли я запускать пустые RunLoops? Любые другие способы.

+2

Вы хотите заблокировать поток или просто отключить взаимодействие с пользовательским интерфейсом? – Vladimir

+0

Я бы сказал, блок , но отключить может также работать ... так что я могу отключить UI (все кнопки, вкладки и т. Д.)? спасибо – user349302

+0

InteractionEnabled to NO, установленный в корневом представлении? – user349302

ответ

4

Если вы хотите заблокировать все взаимодействия с вашим пользовательским интерфейсом, вызовите метод UIApplication-beginIgnoringInteractionEvents. Если вы на самом деле пытаетесь запретить всему пользовательскому интерфейсу делать что-либо (что не очень хорошо - ваше приложение может заблокировать появление системного уведомления, например), то да, NSRunLoop, вероятно, будет правильным подходом.

+0

Да, это нормально. Но только для примера: как заблокировать все с помощью RunLoop? – user349302

+0

Я не слишком хорошо знаком с циклами запуска, но я думаю, что начинать с -run или -runUntilDate: сделал бы это. –

Смежные вопросы