Wenn i Haupttableview Liste der Elemente von Coredata laden es zeigt perfekt durch:Wert verschwindet aus DATENSATZ nach Haupttableviewcontroller geladen
let fetchRequest:NSFetchRequest<Identity> = Identity.fetchRequest()
do
{
identities = try DatabaseController.getContext().fetch(fetchRequest)
print("number of results: \(identities.count)")
for identity in identities as [Identity]
{
print("\(identity.pName!) is \(identity.accuracy)% Robesper. Updeted \(identity.lastModified!).")
}
}
catch
{
print("Error fetchRequest in ViewWillApper: \(error)")
}
Löschen funktioniert auch gut, so habe ich ein neues Navigation und eine Ansicht zum Hinzufügen ein neues Objekt.
Um die Liste zu überprüfen und herauszufinden, was das Problem (offensichtlich) ist, gebe ich list.count aus. Denn wenn ich das Haupt-TableView mit Liste lade, erscheint neues ITEM grundsätzlich nicht. Wenn ich jedoch den SIMULATOR neu starte, werden alle Elemente angezeigt.
So 1. Neues Objekt erstellt.
> number of results: 3 Hello World is 99% Robesper. Updeted 2017-07-08 > 17:50:30 +0000. Sex is 99% Robesper. Updeted 2017-07-27 17:56:12 > +0000. test is 99% Robesper. Updeted 2017-07-27 18:03:28 +0000.
Now -> zu Tableview Go -> überprüfte ich die Liste am viewDidLoad und viewWillAppear.
Es ist "0". Großartig, denn es ist nicht unordentlich und wir können es jetzt aus der CoreData-Liste im TableViewController überprüfen.
number of results viewDidLoad: 0 viewWillAppear: 0 number of results: 2 Sex is 99% Robesper. Updeted 2017-07-27 17:56:12 +0000. Hello World is 99% Robesper. Updeted 2017-07-08 17:50:30 +0000. after fetch: 2
- Starten Sie den SIMULATOR neu. Es ZEIGT mir jetzt 3 Gegenstände. Aber wenn ich die Hinzufügung von Gegenständen wiederhole, passiert es wieder.
MAYBE, wegen der Beendigung des Programms gespeichert wir es von AppDelegate?
func applicationWillTerminate(_ application: UIApplication)
{
DatabaseController.saveContext()
}
Ich klebte das Speichern .saveContext() auf ViewWillAppear, hat nicht funktioniert. WHAAAAT? Was mache ich falsch Leute? BITTE! SPEICHERN SIE MICH: D
Sie auch den Artikel in den Haupt Warteschlange –
und laden Sie die Tabelle in Hauptwarteschlange –
Bitte überprüfen Sie meine Antwort . –