私はCloudKitで楽しいソーシャルメディアアプリを開発していますが、最近投稿された画像を最初に表示するという問題に取り組んできました。CloudKitから今日の日付に最も近い投稿を表示するにはどうすればよいですか?
私はCloudKitに画像と日付を掲示するためのレコードタイプの設定を持っています。これはプログラムでiPhoneの投稿日に設定されています。ここで
は、アプリを開いたときに画像を表示するための私のコードです:今のところ
override func viewDidAppear(animated: Bool) {
let container = CKContainer.defaultContainer()
let publicDatabase = container.publicCloudDatabase
let predicate = NSPredicate(value: true)
let query = CKQuery(recordType: "Post", predicate: predicate)
publicDatabase.performQuery(query, inZoneWithID: nil) { results, error in
if error == nil { // There is no error
results
print("No Error")
if results!.count > 0 {
print("Found some")
self.newResults = results!
let randomNumber = arc4random_uniform(UInt32(results!.count - 1)) + 0
let randomNumberInt = Int(randomNumber)
let record = results![randomNumberInt]
let img = record.valueForKey("Picture") as? CKAsset
let image = UIImage(contentsOfFile: img!.fileURL.path!)
self.imageView.image = image
dispatch_async(dispatch_get_main_queue(), {() -> Void in
})
}
}
else {
print(error)
}
}
}
、このコードは、ちょうどresults
配列にランダムな画像を表示します。しかし、私は何らかの理由で結果をソートし、DatePosted
CloudKitレコードタイプのプロパティを使って、最近投稿された画像を表示したいと思います。私はこれを行う方法を完全に失っているので、どんな助けも非常に魅力的になるでしょう!
'CKQuery'の' sortDescriptors'プロパティを使用してください。 – rmaddy