SORU
6 HAZİRAN 2009, CUMARTESİ


Kullanarak bir NSArray NSDictionary anahtarları süzmek NSPredicate

Sözlükler bir dizi var.

Dizi bir anahtar süzmek istiyorum.

Bunu denedim:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SPORT ==  %@)", @"Football"];

NSArray *filteredArray = [data filteredArrayUsingPredicate:predicate];

Bu işe yaramazsa, hiç bir sonuç alıyorum. Yanlış bir şey yaptığımı düşünüyorum. Bu "SPOR" ıvar. eğer bu yöntemi biliyorum Eğer bir anahtar varsa muhtemelen farklı olduğunu düşünüyorum.

Bir örnek ancak bulmak mümkün olmamıştır.

Teşekkürler

< / ^ hr .

Güncelleme

Arıyorum dizesi tırnak ekledim.

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SPORT ==  '%@')", @"Football"];

Hala çalışmıyor.

< / ^ hr .

Güncelleme 2

Sorunumu hallettim. Ben kılavuzda ne diyor karşı gitmek gibi görünüyor, tek tırnak, kaldırmak zorunda kaldı.

Benim gerçek sorun, iç içe geçmiş bir dizi vardı ve aslında sözlükler değerlendirme değildim. Kemik kafa taşıyın.

CEVAP
6 HAZİRAN 2009, CUMARTESİ


Çalışması gerekir - veri değişkeni aslında bir dizi anahtar SPORU ile bir Sözlük içerir

NSArray *data = [NSArray arrayWithObject:[NSMutableDictionary dictionaryWithObject:@"foo" forKey:@"BAR"]];    
NSArray *filtered = [data filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(BAR == %@)", @"foo"]];

Bu durumda filtre içeren sözlük.

(%@alıntı olmak zorunda değildir, bu yapıldığında bu NSPredicate nesne oluşturur.)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bach Vlogs

    Bach Vlogs

    18 HAZİRAN 2011
  • David Tedeyev

    David Tedeye

    20 AĞUSTOS 2011
  • Propaganda Time

    Propaganda T

    19 EYLÜL 2010