Wdrożyłem koncepcję SearchBar w mojej aplikacji, ale ma ona błąd, gdy wprowadzam pierwszy znak w pasku wyszukiwania, to nie działa, a widok tabeli nie pokazuje powiązanych pól i pokazuje pusty widok tabeli, ale wprowadzam drugi znak, który wyświetla powiązane pola w widoku tabeli, nie wiem, jaki błąd popełniono, proszę o pomoc.UISearchBar nie działa po wprowadzeniu pierwszego znaku?
Tutaj podaję mój kod.
-(void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
NSLog(@"searching::");
if(searchBar.text.length == 0)
{
[searchDict removeAllObjects];
[arrayDict removeAllObjects];
searchDict=[[NSMutableArray alloc]init];
arrayDict=[[NSMutableArray alloc]init];
[self getJsonResponse];
[self.tableView reloadData];
} else {
[arrayDict removeAllObjects];
arrayDict=[[NSMutableArray alloc]init];
}
dispatch_async(dispatch_get_main_queue(), ^{
[self getSearchJsonResponse:searchBar.text];
NSLog(@"searchDict::%@",searchDict);
[self.tableView reloadData];
});
}
Jest więcej informacji potrzebnych do poprawnej odpowiedzi na pytanie, czy możesz edytować, dodając kod 'getSearchJsonResponse'? – juanjo
Uzgodniono z @juanjo. Potrzebujemy więcej informacji, aby zapewnić lepszą odpowiedź. Wygląda na to, że wysyłasz wezwanie do serwisu internetowego synchronicznie, co nie jest najlepszą praktyką. Pomożemy Ci rozwiązać ten i główny problem, jeśli mamy więcej informacji. – Alexander
Z opublikowanego przeze mnie kodu, jestem pewien, że wszystko jest w porządku. Problem musi być w metodzie getJsonResponse lub getSearchJsonResponse' –