Filterung NSArray von NSDictionary Objekte mit NSPredicate

Ich habe ein NSArray von NSDictionary-Objekte. Ich möchte filter-array basiert auf dem Schlüssel des dictionaries mit NSPredicate. Ich habe dabei so etwas wie dieses:

NSString *predicateString = [NSString stringWithFormat:@"%@ == '%@'", key, value];
NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateString];
NSArray *filteredResults = [allResultsArray filteredArrayUsingPredicate:predicate];

Dies funktioniert gut, wenn Sie Schlüssel übergeben, in einem Wort: Farbe, Name, Alter. Aber es funktioniert nicht, wenn der key ist multi-Wort, wie: Person, Alter, Name der Person.

Grundsätzlich eine beliebige Taste, die ein Leerzeichen enthält, funktioniert es nicht. Ich habe versucht, indem Sie einfache Anführungszeichen um den Schlüssel in der Zeichenfolge, so wie Sie fertig sind, auf den Wert die Seite, aber das hat nicht funktioniert entweder. Habe auch versucht die doppelten Anführungszeichen, aber ohne Erfolg.

Bitte beraten. Vielen Dank im Voraus.

versuchen %K - it ' s gut zu arbeiten in core data
mögliche Duplikate von NSPredicate format-string funktioniert nicht

InformationsquelleAutor Bittu | 2012-05-08

Schreibe einen Kommentar