Tengo un NSArray de objetos NSDictionary. Quiero filtrar la matriz en función de las claves de los diccionarios mediante NSPredicate. He estado haciendo algo como esto:Filtrado NSArray de objetos NSDictionary utilizando NSPredicate
NSString *predicateString = [NSString stringWithFormat:@"%@ == '%@'", key, value];
NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateString];
NSArray *filteredResults = [allResultsArray filteredArrayUsingPredicate:predicate];
Esto funciona bien si es aprobada en clave de una sola palabra: color, nombre, edad. Pero no funciona si la clave es de varias palabras, como: Persona Edad, Nombre de persona.
Básicamente, cualquier clave que contenga un espacio, no funciona. He tratado de poner comillas simples alrededor de la clave en la cadena, al igual que se hacen en el lado del valor, pero eso tampoco funcionó. También intenté comillas dobles, pero fue en vano.
Por favor, asesorar sobre esto. Gracias por adelantado.
intento% K - que está bien el trabajo en los datos básicos – user170317
posible duplicado de [formato de cadena NSPredicate no funciona] (http://stackoverflow.com/questions/12413929/nspredicate-format -string-doesnt-work) – Monolo