Array basierend auf zwei Parametern sortieren

8

Ich habe ein Array von Objekten, die aus zwei Eigenschaften bestehen: einem NSString und einem BOOL . Ich möchte dieses Array so sortieren, dass alle BOOL s, die YES sind, vor allen Bools angezeigt werden, die NO sind. Dann möchte ich für die Liste der Objekte, die das BOOL YES alphabetisiert haben und ich möchte auch, dass die Objekte mit dem NO alphabetisiert werden. Gibt es eine Art von Bibliothek, die dies in objektiven c erreichen kann? Wenn nicht, was ist der effizienteste Weg, dies zu tun?

    
Ser Pounce 24.06.2013, 02:47
quelle

3 Antworten

21

Sie können NSSortDescriptor s zum Sortieren verwenden:

%Vor%

Sie können mehr über das Sortieren mit Deskriptoren hier .

    
dasblinkenlight 24.06.2013, 02:53
quelle
4

Eine Alternative zur Verwendung von Sortierdeskriptoren ist die Verwendung von NSComparator :

%Vor%

Bitte beachten Sie, dass ich die letzten zwei rückwärts haben kann. Wenn dies die Nein-Werte vor den Ja-Werten sortiert, vertauschen Sie die letzten beiden Rückgabewerte.

    
rmaddy 24.06.2013 03:06
quelle
2

Suchen Sie nach NSSortDescriptors. Erstellen Sie zwei, einen für die Zeichenfolge, einen für die Bool. Dann füge beide zu einem Array hinzu. Verwenden Sie dann die NSArray-Methode sortedArrayWiyhDescriptors.

    
William Falcon 24.06.2013 02:54
quelle

Tags und Links