如何加载 UITabBarController 的所有选项卡?

How to load all tabs of UITabBarController?

我目前正在开发一个带有 "LoginViewController" 的 Swift 应用程序。用户通过身份验证后,应用程序将继续使用具有 4 个选项卡的 UITabBarController。

在第四个选项卡中,我必须在 UIImageView 中加载来自互联网的图像。我希望当我到达第一个选项卡时加载该图像,因为当我单击第四个选项卡时加载此图像会有延迟。

加载此图像的代码位于与我的第四个选项卡关联的第四个 ViewController 的 viewDidLoad() 中。在我转到第四个选项卡之前,有什么方法可以加载此图像吗?

也许在第一个选项卡的 viewDidLoad 中?或者在 UITabBar 的 viewDidLoadViewController ?

我已经检查过这个 link 但无法正常工作:

我认为最好的方法是将下载图像的代码隔离到其他地方,假设 DownloadManager class 作为 class 方法 class func downloadFourthTabImage 然后你当用户完成登录或在选项卡视图控制器中加载第一件事时调用此方法。

这同样适用于您需要为其他视图控制器加载的所有数据。

注意确保在后台队列中下载图像以防止冻结您的UI。

最好在Service/Network layer instead of UI Layer上下载图片,当你登陆第4个标签时,你可以显示imageWithContentOfFile方法的图片。