«Быстрый» способ сделать это - взять UIAlertView и переместить его внутренние подпредставления, чтобы вставить в него свой индикатор выполнения. Недостатком этого является то, что он хрупок и может сломаться в будущем.
Правильный способ сделать это требует реализации подкласса UIWindow, который выложен так, как вы хотите, и установите для его windowLevel значение UIWindowLevelAlert, чтобы он рисовал перед вашим текущим окном. Должно быть довольно легко заставить что-то работать, но чтобы заставить его выглядеть как одно из встроенных предупреждений, потребуется много усилий.
Прежде чем вы сделаете что-либо из этого, я бы посоветовал вам пересмотреть свой пользовательский интерфейс. Почему ваше приложение должно блокироваться во время загрузки. Почему бы просто не разместить строку состояния где-нибудь на экране и позволить пользователю продолжать взаимодействовать с приложением, пока вы выполняете загрузку асинхронно. Посмотрите, как работает приложение «Сообщения», когда оно загружает MMS, чтобы понять, о чем я говорю.
Пользователи ненавидят, когда приложение блокирует их, когда что-то происходит, особенно на iPhone, где нет многозадачности.