Почему UIApplicationWillChangeStatusBarFrameNotification не отправляется, когда строка состояния меняет высоту? - PullRequest
2 голосов
/ 09 марта 2010

Я пытался прослушать изменения высоты строки состояния - например, когда строка состояния вызова отображается или скрыта, или то же самое с строкой состояния подключения к Интернету - прослушивая уведомление UIApplicationWillChangeStatusBarFrameNotification для отправлено.

Довольно простой код здесь ...

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(statusBarWillChangeFrame:) 
                                             name:UIApplicationWillChangeStatusBarFrameNotification
                                           object:nil];

Но в этом случае кажется, что уведомление никогда не отправляется ни на имитаторе с помощью опции «Переключить строку состояния входящего вызова», ни на устройстве, когда вызов заканчивается с открытым приложением. Кроме того, подобный метод UIApplicationDelegate не вызывается.

Согласно документации,

UIApplicationWillChangeStatusBarFrameNotification

Добавлено, когда приложение о изменить рамку строки состояния.

Словарь userInfo содержит NSValue объект, который инкапсулирует CGRect структура, выражающая расположение и размер нового статуса Барная рама. использование UIApplicationStatusBarFrameUserInfoKey чтобы получить доступ к этому значению.

Может кто-нибудь объяснить, почему это уведомление не отправляется в ответ на отображаемую или скрытую строку состояния вызова? Согласно документации, должно быть.

1 Ответ

3 голосов
/ 09 марта 2010

Похоже, что это активная ошибка SDK. Так много для этого.

См. http://openradar.appspot.com/6475681 и http://openradar.appspot.com/7080782.

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