使应用程序等待NSCloudKitPersistentContainer初始化

时间:2020-04-06 16:06:21

标签: swift core-data uicollectionview cloudkit

我有一个使用NSCloudKitPersistentContainer的应用程序,并且集合视图中某些ui元素的状态根据是否保存数据而改变。

是否有可能让应用程序等待容器初始化,以便可以在向用户显示收集视图之前提取数据?

我试图用完成处理程序编写获取函数,并在viewDidLoad中调用它,以使在我拥有数据之前不会向用户显示视图控制器,如下所示:

获取功能:

func fetchFavouriteRecipes(completionHandler: @escaping () -> Void) {
    do {
        savedFavourites = try backgroundContext.fetch(Recipe.fetchRequest())
        favouritesList = savedFavourites
    } catch let error {
        print("Fetching data was unsuccessful: \(error)")
    }
    completionHandler()
}

致电:

override func viewDidLoad() {
    super.viewDidLoad()
    // ...

    viewModel.fetchFavouriteRecipes() {
        self.collectionView.reloadData()
    }
}

但是当我检查断点但没有检索到任何东西时。

0 个答案:

没有答案