Как показать UIWindow поверх клавиатуры, но под UIAlertView
Я хочу показать UIWindow
через клавиатуру, но затем позволяют UIAlertView
отображается при запросе разрешения "Использовать ваше текущее местоположение" для отображения над окном.
Настройка окна windowLevel
в UIWindowLevelAlert
показывает его над клавиатурой, но затем под окном появляется окно с предупреждением. Так, UIWindowLevelAlert
должен иметь более высокий уровень окна, чем у представления предупреждений.
2 ответа
Настройка окна windowLevel
в UIWindowLevelStatusBar
делает то, что я хочу в iOS 6.1. Но это странно, потому что, согласно документации Apple, UIWindowLevelStatusBar
должно быть выше UIWindowLevelAlert.
Будет ли это работать в 5.0, 5.1 и 6.0? У меня проблемы с тестированием на симуляторе, потому что мой интернет очень медленный.
UIWindowLevel является CGFloat, поэтому вы можете назначить промежуточное значение следующим образом: сначала определите, какое окно является окном клавиатуры из массива [UIApplication sharedApplication].windows. Затем,
window.windowLevel=(keyboardWindow.windowLevel+UIWindowLevelAlert)/2.f;