sectionNameKeyPath mit NSFetchedResultsController funktioniert nicht

8

Ich habe eine Entität Order mit der Eigenschaft paid , was ein boolescher Wert ist.

Ich möchte alle Bestellungen in UITableView anzeigen, aber ich möchte sie in zwei Abschnitte gruppieren: "Nicht bezahlt" und "Bezahlt". Also dachte ich, ich würde einfach "bezahlt" als sectionNameKeyPath geben, so:

%Vor%

Nach meiner Überlegung würde dies zu zwei Abschnitten führen, wobei der erste Abschnitt alle Bestellungen mit bezahlt = NEIN (0) und der zweite Abschnitt mit bezahlt = JA (1) enthält.

Aber wenn ich einen neuen Auftrag mit paid = YES hinzufüge, erscheint es im ersten Abschnitt. Wenn ich den abgerufenen Resultatscontroller-Delegaten einchecke, kann ich sehen, dass ein neuer Datensatz mit IndexPath [0,0] erstellt wird! Warum wird es nicht in den zweiten Abschnitt eingefügt?

    
Rits 06.07.2011, 23:12
quelle

1 Antwort

12

Versuchen Sie, dem NSFetchRequest, der mit Ihrem NSFetchedResultsController verwendet wird, ein Array mit Sortierdeskriptoren hinzuzufügen.

Sie werden zuerst nach dem bezahlten Booleschen Wert sortieren müssen und dann nach dem, nach dem Sie sortieren möchten.

Swift 3 Beispiel:

%Vor%     
timthetoolman 08.07.2011, 05:57
quelle