2016-01-19 3 views
2

В настоящее время я разрабатываю приложение Swift с помощью «LoginViewController». Когда пользователь аутентифицируется, приложение переходит на UITabBarController с 4 вкладками.Как загрузить все вкладки UITabBarController?

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

Код загрузки этого изображения находится в viewDidLoad() четвертого ViewController, связанного с моей четвертой вкладкой. Есть ли способ загрузить это изображение, прежде чем я перейду на четвертую вкладку?

Возможно, в viewDidLoad первой вкладки? или в viewDidLoad UITabBarViewController?

Я уже проверил эту ссылку, но не могу заставить его работать: How to load all views in UITabBarController?

ответ

1

Я думаю, что лучший способ, чтобы изолировать код, который загружает изображение somewehere еще, скажу DownloadManager класса как метод класса class func downloadFourthTabImage и затем вы вызываете этот метод, когда пользователь завершил вход в систему или в первую очередь загружается в контроллер представления табуляции.

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

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

1

Лучше всего загрузить изображение на Service/Network layer instead of UI Layer, и когда вы приземлитесь на 4-ю вкладку, вы сможете отобразить изображение с imageWithContentOfFile.

Смежные вопросы