UISearchDisplayController automatically creates a UIPopovercontroller to display content search result ?! How to dismiss it?

后端 未结 3 806
面向向阳花
面向向阳花 2021-02-06 11:03

I\'m using a UISearchDisplayController with a UISearchBar. I put this UISearchBar in my app using IB and I get :

alt text http://img6.imageshack.us/img6/1985/screenshot2

相关标签:
3条回答
  • 2021-02-06 11:48

    Does [searchDisplayController setActive:NO animated:YES]; not work then?

    0 讨论(0)
  • 2021-02-06 12:03

    Can you add some more details on how you have wired up the UISearchDisplayController in IB? It does not do anything special with UIPopoverControllers on the iPad so I assume you have set the searchContentsController to a controller that is a UIPopoverController? If so then you already have the reference you need, though normally you do not need to dismiss this view, it is dismissed for you when you cancel the search.

    0 讨论(0)
  • 2021-02-06 12:06

    None of above solutions worked for me, but I solved it with this:

        [self.searchDisplayController setActive:NO animated:YES];
        [searchBar becomeFirstResponder];
    

    This way cursor stays in the field but popover is dismissed when there are no results.

    Full code:

    - (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText {
        if ([searchText isEqualToString:@""]) {
            [self.searchDisplayController setActive:NO animated:YES];
            [searchBar becomeFirstResponder];
        }
    }
    
    0 讨论(0)
提交回复
热议问题