2014-04-09 7 views
5

Mam zainstalowany i działa poprawnie UISearchBar. Jedyny problem polega na tym, że jeśli wpiszesz w pasku wyszukiwania literę "e", to pokaże mi tylko słowa zaczynające się od litery "e", zaniedbując wszystkie słowa rozpoczynające się/mające literę "é". Upewniłem się, że wszystkie moje zapytania dotyczące ładowania bazy danych do NSMutableArray są poprawnie kodowane w UTF-8. Ale problem polega na tym, jak mogę pokazać wyniki "e" i "é", gdy użytkownik naciśnie "e". Praktycznie jak wszystkie francuskie słowniki działają!
ten sposób mogę filtrować słowa, gdy użytkownik naciśnie żadnego listu:
Pasek wyszukiwania zawierający wyniki "e" i "é" w tym samym czasie

for (Author* author in theauthorsLoadedFinal2) 

{   
    NSRange nameRange = [author.name rangeOfString:text options:NSAnchoredSearch ]; 

    NSRange descriptionRange = [author.genre rangeOfString:text options:NSAnchoredSearch]; 
    if(nameRange.location != NSNotFound || descriptionRange.location != NSNotFound) 
    { 
     [filteredTableData addObject:author]; 
        } 


} 

}

Dziękujemy

+2

Szukaj "NSDiacriticInsensitiveSearch". – Larme

+0

@Larme dziękuję za odpowiedź, ale jak to zaimplementować –

+0

@Larme dziękuję to pomogło !!! opublikuj to jako odpowiedź, a ja ją zaakceptuję :) –

Odpowiedz

0

podstawie końcówki LARME jest, odpowiedź była dość prosta! dla wszystkich przyszłych wystąpień tego problemu, użyj następującego kodu:

NSRange nameRange = [author.name rangeOfString:text options:NSAnchoredSearch | NSDiacriticInsensitiveSearch]; 

NSRange descriptionRange = [author.genre rangeOfString:text options:NSAnchoredSearch | NSDiacriticInsensitiveSearch]; 
Powiązane problemy