UISearchController searchResultsController desaparece cuando el text de la barra de búsqueda está vacío

Tengo un UISearchController que muestra su searchResultsController (que es otro controller de vista) cuando se toca la barra de búsqueda. Hago esto usando este método delegado de UISearchController:

-(void)presentSearchController:(UISearchController *)searchController { dispatch_async(dispatch_get_main_queue(), ^{ searchController.searchResultsController.view.hidden = NO; }); } 

Sin embargo, cada vez que el text de la barra de búsqueda está vacío, ya sea eliminando manualmente todo el text o tocando el pequeño button x, la vista searchResultsController desaparece hasta que comienzo a escribir text nuevamente. ¿Alguna idea de por qué esto puede estar sucediendo? ¿Hay otro método o método de delegado que se activa cuando searchbar.text está vacío?

Así que después de juguetear con esto durante un time ayer, esta es la solución que encontré que terminó funcionando. ¡Pensé que lo publicaría en caso de que alguien más tenga el mismo problema!

 -(void)presentSearchController:(UISearchController *)searchController { //forces searchResultsController to appear when searchBar tapped dispatch_async(dispatch_get_main_queue(), ^{ searchController.searchResultsController.view.hidden = NO; }); } -(void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText { //Prevents searchController from disappearing if ([searchText isEqualToString:@""]) { [self presentSearchController:self.searchController]; } }