等待在UITabBarController中加载子视图?

时间:2018-05-24 14:25:26

标签: ios swift uitabbarcontroller

我有一个TabBarController,在Storyboard中连接了3个子视图。

我在TabBarControllers自定义类中执行我的API业务。这是异步。

子视图都是从父TabBarController获取信息。

问题:

所有子节点只获取伪数据,因为它们是在API调用完成之前加载的。

有没有办法延迟"装孩子?我可以在完成异步任务时调用的东西吗?

1 个答案:

答案 0 :(得分:1)

您可以从空的标签栏控制器开始,并在API调用完成时以编程方式添加子视图控制器。

然而,这引出了一个问题,为什么要显示标签栏控制器呢?相反,我建议您从空的“加载”屏幕开始,并在API调用完成时切换到标签栏控制器。

我还建议,不要将TabBarController子类化为API调用,而是创建一个单独的管理器对象来执行更新过程,可能作为单个对象(取决于其他代码注意事项)。然后,您可以从视图控制器调用共享实例,或者将API调用管理器直接注入到呈现/父视图控制器上prepare(for segue: sender:)中的每个实例中。