Самый простой способ, который я могу придумать, это добавить окно заставки в MainMenu.xib и пометить его как видимое при запуске - таким образом, вам не нужно беспокоиться о загрузке и отображении, все это произойдет по умолчанию,В вашем приложении -applicationDidFinishLaunching :, запустите экземпляр NSTimer.Когда оно сработает, отправьте вашему всплывающему окну сообщение -close.
(Правка) Хорошо, я знаю, вы не спрашивали, хорошая это идея или нет, но в любом случае вот мои два цента - если вашему приложению нужнычтобы загрузить и инициализировать кучу плагинов или выполнить какую-либо другую длительную операцию, прежде чем она будет готова к использованию, тогда заставка с обновленным статусом будет менее раздражающей, чем просто сидеть и задаться вопросом, что происходит ...
(Edit.2) Подробнее о загрузке плагина.Вы можете написать метод, который загружает один плагин, а затем использует NSTimer для вызова себя с нулевой задержкой, если есть еще плагины для загрузки.Выполнение этого с помощью таймеров с нулевой задержкой вместо простого цикла for () или while () позволит циклу выполнения оставаться активным, поэтому вы можете обновить индикатор выполнения и избежать вращающейся техничной пиццы смерти.