Загрузить все контроллеры вида при запуске - PullRequest
0 голосов
/ 01 ноября 2011

Я создал приложение для iPad, которое имеет 10 контроллеров представления, которые смахивают влево и вправо друг к другу, и у каждого есть 2-10 страниц для вертикального просмотра UIScrollView. Проблема в том, что при запуске запускаются только первые контроллеры, поэтому для каждого пролистывания сначала требуется 10 секунд. После первоначального пролистывания я могу с легкостью перелистывать туда-сюда, но я бы предпочел, чтобы в начале у меня было все время загрузки, чтобы пользователь не задавался вопросом, что происходит.

Есть ли способ загрузить все сразу? Должен ли я даже использовать подкласс UIViewController для этого?

Спасибо!

1 Ответ

0 голосов
/ 01 ноября 2011

Вы можете выделить и инициализировать их все в делегате приложения (я думаю, что они идут в методе applicationDidFinishLaunching, но я не на своем компьютере, чтобы убедиться, что это лучшее место). Возможно, вы захотите установить для их свойства isHidden значение YES (за исключением того, которое вы хотите показать первым).

Как только они загружены таким образом, контроллер представления приложений можно использовать для изменения скрытого свойства, когда вы хотите, чтобы представление отображалось или было скрыто.

Если для загрузки каждого вида действительно требуется 10 секунд, у вас будет начальное время загрузки при запуске приложения, которое в 10 секунд умножит количество загружаемых просмотров. Но как только они загружены, у вас больше не должно быть этой задержки.

Обновление: Если вы хотите анимировать переходы из одного представления в другое, вам придется использовать больше, чем свойство isHidden (которое нельзя анимировать). Но вы можете разобраться с этим позже и начать с выделения и инициализации, как я описал выше.

...