2011-01-07 1 views
4

У меня есть контроллер панели вкладок с 4 отдельными видами. Когда я перемещаюсь от первого представления ко второму виду, для загрузки второго представления требуется некоторое время.Загрузите все просмотры таблиц при первом запуске приложения

Что я хочу сделать, иметь возможность загружать и инициализировать все мои представления на панели вкладок во время моего заставки. Таким образом, когда пользователь перемещается между представлениями табуляции, нет времени ожидания.

Как вручную инициализировать отдельные окна панели вкладок в своем делете делегата?

+0

Что нужно для загрузки в различные виды? Я не думаю, что вы получаете много процессорного времени во время заставки, и если бы вы сделали это, ваша загрузка просто увеличила бы заставку? – westsider

+0

Возможный дубликат [Загрузить все вкладки TabBar] (http://stackoverflow.com/questions/9202737/load-all-tabbar-views) –

+0

этот может помочь ... немного устарел, но некоторые обновления для swift 3 - https://stackoverflow.com/questions/9202737/load-all-tabbar-views –

ответ

2

Я думаю, что доступ к представлению свойства каждого из ваших контроллеров приведет к его загрузке (ленивая загрузка). Хотя я не думаю, что у вас может быть абсолютная гарантия, он не будет выгружен, прежде чем использовать его, если память будет жесткой.

2

Чтобы загрузить программный вид табуляции, например. в application:didFinishLaunchingWithOptions: вы можете:

// load the third one, for instance 
thirdNavController = [tabBarController.viewControllers objectAtIndex:2]; 
[thirdNavController.topViewController loadView]; 
+1

[Документация] (https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIViewController_Class/#//apple_ref/occ/instm/UIViewController/loadView) указывает: «Вы никогда не должны называть [loadView] напрямую». Однако «Если вы обращаетесь к [свойству вида] и его значение в настоящее время равно нулю, контроллер вида автоматически вызывает метод loadView« в соответствии с [этим ответом] (http://stackoverflow.com/a/9203007/142845). – Will