У меня проблема: я программирую приложение, которое использует searchBar и tableView.
Когда я нажимаю на строку поиска, набираю строку для поиска, как только нажимаю кнопку отмены, или удаляю все условия поиска и снова нажимаю tableView, мое приложение падает.
Когда я запускаю приложение в симуляторе iOS, оно не падает при этом.
Когда я запускаю приложение на своем iPhone через xcode, оно не падает при этом.
Я не очень понимаю журнал устройства, и я хотел спросить, есть ли способ узнать, что происходит ужасно неправильно и почему этого не происходит при выполнении этого через xcode. Пожалуйста, помогите мне!
PS: Один из журналов устройства: (Может быть, вы, ребята, понимаете это)
что-то пошло не так http://img804.imageshack.us/img804/4870/bugd.png
РЕДАКТИРОВАТЬ: Вот код метода searchDisplayControllerDidEndSearch:
- (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller
{
[self.navigationController setNavigationBarHidden:NO animated:YES];
[UIView beginAnimations:@"DeactivateSearch" context:nil];
[UIView setAnimationDuration:0.4];
[self.attractionsTableView setFrame:CGRectMake(0, 43, 320, 362)];
[UIView commitAnimations];
NSFetchRequest *fetchRequest = [[self fetchedResultsController] fetchRequest];
[fetchRequest setPredicate:nil];
NSError *error = nil;
if (![[self fetchedResultsController] performFetch:&error]) {
// Handle error
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
[self setSearchIsActive:NO];
return;
}
ОБНОВЛЕНИЕ: панель поиска НЕ вылетает, если текст не был напечатан. Так что простая активация панели поиска и ее деактивация без ввода текста работает. Но как только я набрал один символ, процесс деактивации завершает работу приложения.