Ich habe hier eine kleine mentale Blockade, ich bin ziemlich zufrieden mit Core Data und entschied mich für einige meiner Apps in CloudKit zu vertiefen, während die Upload-Seite ziemlich einfach war, Ich habe Probleme, eine einfache Tabellenansicht zu füllen.Swift3, CloudKit und UITableView gibt leere Tabelle zurück
Der CKRecord ist Aktivität und das Feld, das ich anzeigen möchte, ist Name. Die Druckfunktion print (actName) gibt 7 Mal zurück und zeigt an, dass alle Datensätze gezählt wurden, aber die Tabelle leer und keine Fehler enthält.
Ich bin sicher, das ist etwas einfaches und ich kann das Holz für die Bäume nicht sehen, also bin ich glücklich für einen Punkt in die richtige Richtung bitte.
Prost
import UIKit
import CloudKit
class TableViewController: UITableViewController {
var activities = [Activity]()
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
}
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
print("counted records")
return activities.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
let active = activities[indexPath.row]
if let actName = active.name {
cell.textLabel?.text = actName
print(actName)
}
return cell
}
Wo Sie Objekte in 'activities' array speichern. –
Nirav, das war meine Absicht. Mein CK-Eintragstyp ist Aktivität in einer öffentlichen Datenbank. Ich bin ratlos, warum ich "gezählte Datensätze" bekomme, aber nicht "actName". – Bowcaps
Wie ich sage, ist dies mein erster Einstieg in CloudKit und ich habe einige der Syntax verwendet, die ich für meine CoreData Apps verwendet habe, die einwandfrei funktionieren. – Bowcaps