在我製作的應用程序中,會有大量的數據可以從iCloud加載。我的問題是,它不會將數據加載到集合視圖中,直到它完成接收所有數據(需要一段時間)。我希望應用程序在接收數據時將數據加載到集合視圖中,因此用戶不必等待。或者,應用程序一次僅加載一些數據會更好嗎?我該怎麼做呢?這是我用來加載數據的代碼。如何讓我的cloudkit應用程序加載數據作爲其加載?
注意:我在這個項目中使用了swift。
func loadInfo() {
let predicate:NSPredicate = NSPredicate(value: true)
let query:CKQuery = CKQuery(recordType: "Data", predicate: predicate)
query.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
if let database = self.publicDatabase {
database.performQuery(query, inZoneWithID: nil, completionHandler: { (records:[AnyObject]!, error:NSError!) in
if error != nil {
self.alert("Error: \(error.localizedDescription)", Message: "Make sure iCloud is turned on and you are connected to the internet")
}
else {
dispatch_async(dispatch_get_main_queue()) {
self.array.removeAll(keepCapacity: false)
for record in records {
let usernameRecord:CKRecord = record as CKRecord
self.array.append(usernameRecord.objectForKey("Info") as String)
}
//update data
self.collectionView.reloadData()
}
}
})
}}
很好的問題。我也在尋找這個。 – CppChase