等待在 UITabBarController 中加载 child 个视图?
Wait to load child views in UITabBarController?
我有一个 TabBarController,在 Storyboard 中连接了 3 child 个视图。
我在 TabBarControllers 自定义 class 中做我的 API 业务。这是异步的。
child 视图都从 parent TabBarController 获取信息。
问题:
所有 child 仅获取虚拟数据,因为它们是在 API 调用完成之前加载的。
有没有办法 "delay" 加载 child?我可以在完成时调用异步任务吗?
您可以从一个空的标签栏控制器开始,然后在 API 调用完成时以编程方式添加子视图控制器。
然而,这引出了一个问题,为什么要显示标签栏控制器?相反,我建议您从一个空的 'loading' 屏幕开始,并在 API 调用完成后转到选项卡栏控制器。
我还建议,不要为 API 调用子类化 TabBarController
,而是创建一个单独的管理器对象来执行更新过程,可能作为一个单例对象(取决于其他代码注意事项)。然后,您可以从视图控制器调用共享实例,或者将 API 调用管理器直接注入呈现/父视图控制器上 prepare(for segue: sender:)
中的每个实例。
我有一个 TabBarController,在 Storyboard 中连接了 3 child 个视图。
我在 TabBarControllers 自定义 class 中做我的 API 业务。这是异步的。
child 视图都从 parent TabBarController 获取信息。
问题:
所有 child 仅获取虚拟数据,因为它们是在 API 调用完成之前加载的。
有没有办法 "delay" 加载 child?我可以在完成时调用异步任务吗?
您可以从一个空的标签栏控制器开始,然后在 API 调用完成时以编程方式添加子视图控制器。
然而,这引出了一个问题,为什么要显示标签栏控制器?相反,我建议您从一个空的 'loading' 屏幕开始,并在 API 调用完成后转到选项卡栏控制器。
我还建议,不要为 API 调用子类化 TabBarController
,而是创建一个单独的管理器对象来执行更新过程,可能作为一个单例对象(取决于其他代码注意事项)。然后,您可以从视图控制器调用共享实例,或者将 API 调用管理器直接注入呈现/父视图控制器上 prepare(for segue: sender:)
中的每个实例。