Domanda

Ho problemi l'implementazione di una barra di ricerca nella mia app.

I metodi di ricerca gli elementi filtrati, ma per qualche motivo non verranno visualizzati nella mia Tableview. Penso che abbia qualcosa a che fare con l'aggiunta di oggetti al filteredListContentArray.

Quale oggetto dovrei essere aggiunta per far funzionare tutto questo.

Ecco il mio codice:

{
[self.filteredListContent removeAllObjects]; // First clear the filtered array.
for (NSDictionary *dictionary in tableDataSource)   
{

    NSString *testString = [dictionary valueForKey:@"Title"];
    NSLog(@"String list to be Searched is %@", testString);
    //NSLog(@"Contents of list are %@", testString);
    NSComparisonResult result = [testString compare:searchText options:(NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch) range:NSMakeRange(0, [searchText length])];
    //NSObject *filteredObject = [dictionary objectForKey:@"Title"];
    if (result == NSOrderedSame)

    {
        NSLog(@":-)");
        NSLog(@"Resulted object is %@", [dictionary valueForKey:@"Title"]);
        [self.filteredListContent addObject:dictionary];
    }
    else
    {
        NSLog(@":-(");
    }
}


NSLog(@"Contents of Filtered list are %@", self.filteredListContent);}

L'ultima NSLog legge (null) ogni volta, ma la NSLog Sopra di esso mostra sempre gli elementi filtrati corrette.

È stato utile?

Soluzione

dove allocare memoria per il filteredListContent? e v'è matrice tableDataSource. si fa a riempire il vostro tavolo da filteredListContent o dalla matrice tableFataSource? inoltre si può provare a stampare di consolare [descrizione filteredListContent];

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top