In meinem Xcode-Projekt lade ich Objekte in ein Array
und präsentiere es dann auf einem UITableViewController
. Während diese Artikel laden, ist die UITableViewController
leer und ist nicht ästhetisch ansprechend, also möchte ich einen Aktivitätsindikator in die UITableViewController
setzen, während er die Daten lädt. Ich habe meinen Code unten kopiert. Wie implementiere ich das? (ich hörte etwas ein Abschluss-Handler möglicherweise genannt den Trick tun könnte, aber ich bin nicht sicher, wie es zu benutzen)Aktivitätsanzeige, während Tabellenansicht geladen wird
func loadAnimals() {
let animalQuery = PFQuery(className: "Animals")
animalQuery.whereKey("userID", equalTo: PFUser.current()?.objectId! ?? String()) //getting which user
animalQuery.limit = 10
animalQuery.findObjectsInBackground { (objects, error) in
if error == nil {
self.colorArray.removeAll(keepingCapacity: false)
self.animalNameArray.removeAll(keepingCapacity: false)
self.animalTypeArray.removeAll(keepingCapacity: false)
for object in objects! {
self.colorArray.append(object.value(forKey: "colorType") as! String) // add data to arrays
self.animalNameArray.append(object.value(forKey: "animalName") as! String) // add data to arrays
self.animalTypeArray.append(object.value(forKey: "animalType") as! String) // add data to arrays
}
self.tableView.reloadData()
} else {
print(error?.localizedDescription ?? String())
}
}
}
// legt Farben in Reihen
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") as! AnimalCell //connects to color cell
//Adds the animal information in the cells
cell.colorType.text = colorArray[indexPath.row]
cell.animalName.text = animalNameArray[indexPath.row]
cell.animalType.text = animalTypeArray[indexPath.row]
return cell
}
Mögliche Duplikat [Ort-Aktivitätsanzeige über uitable Ansicht] (https://stackoverflow.com/questions/29311093/place-activity-indicator-over-uitable- view) – MwcsMac