我有以下问题。在我的应用程序中,我从服务器下载 .xml 文件然后解析它。我从 application:willFinnishLaunchingWithOptions 调用这两种方法(获取和解析)。
解析后立即发布通知。在主 TableView Controller 中,观察者和选择器应该重新加载 TableView 。但事实并非如此。 TVC 中的 ViewDidLoad 在解析完成之前调用,也在启动屏幕消失之前调用。
所以我的问题是:是否可以卡住 application:didFinishLaunchingWithOption 直到所有数据都被解析?谢谢
最佳答案
不,这不可能。你可以做什么: 不要展示你的电视广告。显示加载 Controller 。该 Controller 将完成加载数据和解析数据的工作。完成后,您可以调用 TVC
例如:
- LoadingController 有一个管理器类的实例
- 经理下载您的文件。 (额外的通讯器或其他东西)
- 您向经理调用提供成功和失败 block 。意思是,使用
func downloadXML(success: blockStuff, failure: blockstuff)
构建一个函数。如果您成功提供解析 - 解析完成后,您将 TBV 与数据一起显示
欢迎提问或评论:)
关于ios - 从 xml 预加载数据, TableView 不会重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32997933/