2016-10-24 9 views
0

Когда в iOS отображается уведомление о конфиденциальности (например, запрашивая доступ к фотографиям), вызывается UIApplicationWillResignActiveNotification, когда отображается предупреждение, и приложение становится неактивным. Затем, когда выбор сделан по предупреждению, и приложение возобновляется, вызывается UIApplicationDidBecomeActiveNotification. Это также имеет место, когда другие предупреждения отображаются, например, когда отображается уведомление о оповещении, то есть registerUserNotificationSettings.Определение состояния приложения, когда `UIAlertView` или` UIAlertController` отображаются и увольняются

Однако, при вызове UIAlertView или UIAlertController, UIApplicationWillResignActiveNotification и UIApplicationDidBecomeActiveNotification не вызываются, когда фокус меняется от приложения к чеку.

Вопрос:

Что происходит? Каковы эквивалентные уведомления, вызванные для неактивным и активным состоянием приложения, когда UIAlertView или UIAlertController отображаются и уволены?

+1

Если вам нужно выполнить какой-либо код, когда отображаются или отклоняются UIAlertView или UIAlertController, вы можете просто использовать обработчик завершения в вызовах displayViewController и UIAlertAction соответственно. – creeperspeak

ответ

2

Когда ваш собственный код явно отображает UIAlertController (или UIAlertView), уведомление отсутствует. Ваше приложение уже знает, что вы показываете предупреждение, потому что вы его просто показали.

Другие системные предупреждения, такие как предупреждения о конфиденциальности, не отображаются в приложении. Они показаны iOS. В этом разница. Ваше приложение неактивно, так как ОС теперь активна, показывая предупреждение. Ваше приложение снова активируется, когда будет выполнено системное предупреждение.

+0

Спасибо, @rmaddy. Но есть ли изменение взгляда, подсмотров или макетов, к которым можно прикоснуться, когда оно отображается, и предотвращает все другие взаимодействия? – user4806509

+0

Я не понимаю, о чем вы спрашиваете. – rmaddy

+0

Позвольте пояснить. Когда отображаются «UIAlertController» или «UIAlertView», предотвращается взаимодействие с остальной частью приложения. 'viewDidLayoutSubviews',' viewWillAppear' также не запускаются. Существует ли абсолютно ничего, что происходит с иерархией представлений, когда предупреждения отображаются самим приложением? – user4806509

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

  • Нет связанных вопросов^_^