J'essaye de filtrer un array
avec NSPredicate
, mais il renvoie toujours un empty array
.
Code:
_contentFilteredArray = [_contentArray mutableCopy];
[_contentFilteredArray filterUsingPredicate:[NSPredicate predicateWithFormat:@"special == 1"]]; // Always return an empty array.
_ContentArray d'origine:
(
{
id = 1;
special = 0;
},
{
id = 2;
special = 1;
},
{
id = 3;
special = 1;
},
{
id = 4;
special = 0;
}
)
Ce que j'attends de _contentFilteredArray:
(
{
id = 2;
special = 1;
},
{
id = 3;
special = 1;
},
)
Réponses:
1 pour la réponse № 1Essayez ceci, plus en suivant le traditionnel withFormat
méthodes.
[NSPredicate predicateWithFormat:@"special == %@", @1]
2 pour la réponse № 2
Assurez-vous que les éléments du tableau sont conformes au codage de valeur-clé pour la clé special
. Est-ce que
[item valueforKey: @"special"]
retourner la valeur numérique attendue?