Saya cukup baru dalam Parse, jadi saya tetap menggunakan Panduan pengembang dan Fungsi Dasar. Sayangnya tampaknya setidaknya ada satu kesalahan pada dokumentasi mengenai fungsi countObjectsInBackgroundWithBlock. Inilah fungsi saya
var categoryCount: [Int] = []
fungsi getNumberOfItemInCategory() {
for category in categories {
var query = PFQuery(className: "Amiibos")
query.whereKey("category", equalTo: category)
query.countObjectsInBackgroundWithBlock { (count, error) -> Void in
if error == nil {
var result = Int(count)
println("there is \(result) in \(category)")
// println( "TypeName0 = \(_stdlib_getDemangledTypeName(result))")
self.categoryCount.append(result)
}
}
}
for toto in categoryCount {
println("toto: \(toto)")
}
println("categoryCountFunc: \(self.categoryCount)")
}
Fungsi ini tidak mengembalikan Int tetapi Int32. Saya mencoba mengubah nilai pengembalian dengan return Int(count)
tetapi saya mendapatkan kesalahan.
Maka saya ingin menggunakan fungsi ini dalam fungsi:
let categories = ["name1", "name2"]
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if categoryCount.isEmpty {
return 0
}
else {
return categoryCount[section]
}
}
Bantuan apa pun akan sangat dihargai, terima kasih banyak
[edit - tambahkan] Saya menambahkan fungsi untuk mendapatkan hasil dan menyegarkan tabel.
func makeRequest() {
dispatch_async(dispatch_get_main_queue(), { () -> Void in
self.getMyObjectsFromParse()
self.getNumberOfItemInCategory()
self.tableView.reloadData()
})