ho UISearchBar
, UITableView
, un servizio web che restituisce una NSMutableArray
che contengono oggetti come questo:Filtro un NSArray che contiene oggetti personalizzati
//Food.h
Food : NSObject {
NSString *foodName;
int idFood;
}
@property (nonatomic, strong) NSString *foodName;
e la matrice:
Food *food1 = [Food alloc]initWithName:@"samsar" andId:@"1"];
Food *food2 = [Food alloc] initWithName:@"rusaramar" andId:@"2"];
NSSarray *array = [NSArray arrayWithObjects:food1, food2, nil];
Come faccio filtra il mio array con oggetti con nome che inizia con "sa"?
Grazie per la risposta, cosa è [evalutedObject objectName] ?? – samir
'objectName' era la proprietà nella sottoclasse' NSObject' nella tua domanda. Se si desidera filtrare in base a una proprietà diversa degli oggetti nell'array, utilizzare invece solo il nome della proprietà. –
Mi dispiace, sto facendo così: myObject * obj = [myObject new]; myArray = [myArray filteredArrayUsingPredicate: [predicato NSPredicateWithBlock:^BOOL (id signedObject, NSDictionary * bindings) { return [[obj objectName] hasPrefix: searchTextField.text]; }]]; – samir