Где я могу изменить окно, которое мое приложение использует из UIWindow в мой собственный подкласс "MyWindow" с раскадрой?

У меня есть универсальный проект здесь с раскадрой. Я создал подкласс UIWindow под названием MyWindow, и мне нужно загрузить его вместо UIWindow по умолчанию. До раскадровки я просто перешел в файл .XIB в XCode и изменил класс для главного окна в MyWindow. Тем не менее, я не могу найти какой-либо раздел, где я могу изменить это в раскадровке.

Кто-нибудь знает, где я могу это сделать? Мне нужно главное окно для загрузки MyWindow, а не UIWindow.

Ответ 1

При использовании раскадровки делегат приложения и главное окно больше не отображаются в Interface Builder. Вместо этого, когда ваше приложение запускается, ваш делегат приложения запрашивается для свойства, называемого "окно". Если это возвращает nil, тогда для вас будет создано окно по умолчанию типа UIWindow. Чтобы изменить это поведение, вам нужно внедрить метод "window" getter в делете приложения, который возвращает ваш подкласс MyWindow. См. documentation.