Просмотр поверх всего: вложенное представление UIWindow VS вложенное представление UIViewController

Чтобы сделать UIView поверх всех представлений, таких как поведение UIAlertView , лучший способ увидеть заключается в том, чтобы поместить его в окно приложения, то есть добавить представление в:

[[[UIApplication sharedApplication] delegate] window]

Однако я обнаружил обратную сторону в том, что он не выполняет ротацию автоматически. Чтобы он выполнялся поочередно, лучше всего добавить представление к текущему AppDelegate window.navigationController / rootViewController , однако при этом он больше не будет вдобавок ко всему. Скажем, когда отображается представление и есть всплывающее окно modalViewController, модальное представление обязательно закроет представление.

У меня вопрос, можно ли добавить подпредставление в самое верхнее окно и , поддерживающие ориентацию? Нужны ли мне в этом случае два набора файлов с перьями? Как UIAlertView творит чудеса, объединяя верхний уровень и поддержку ориентации? Когда я заглядываю в UIAlertView.h , я вижу, что на самом деле есть 2 UIWindows , один раз называется originalWindow , а другой - dimWindow . Есть ли место, где я могу найти исходный код для UIAlertView.m ?

27
задан iHunter 8 January 2012 в 22:15
поделиться