2010-05-04 5 views

cevap

-1

Doğrultucu bir arama yapmak ve dizideki her girdiyi, aradığınızla eşleşip eşleşmediğini görmek için karşılaştırmanız gerekir.

+0

yanlış cevap .... (eğer NSPredicate beri sen, yapmaması gereken) –

25

böyle bir şey deneyin:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"firstName==%@ OR lastName==%@",@"Ken",@"Ken"]; 
NSArray *results = [allPersons filteredArrayUsingPredicate:predicate]; 
+1

temiz. basit. Teşekkürler. –

2

Sadece gerçek sonuç diziden aramanızı filtrelemek için NSPredicate kullanabilirsiniz:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.property_name contains[c] %@",stringToSearch]; 
filteredPendingList = [NSMutableArray arrayWithArray:[mainArr filteredArrayUsingPredicate:predicate]]; 
NSSortDescriptor *sortDescriptor; 
sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"property_name" 
               ascending:YES]; 
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor]; 
NSArray *sortedArray; 
sortedArray = [filteredPendingList sortedArrayUsingDescriptors:sortDescriptors]; 

Yani, sıralanmış diziyi filtrelenmiş sonuçla alacaksınız. property_name Yukarıdaki arama işlemi gerçekleştirmek istediğiniz nesne içinde değişken adıdır. Umarım size yardımcı olur.

+1

"Basitçe" yazabilirsiniz ... 7 satır kod yazabilirsiniz! lol – tothemario