问题
I have a UISearchBar. I want the the keyboard to go away as soon as user hits search...i did try resignFirstResponder but that didn't work. any help would be appreciated
- (void)viewDidLoad {
    [super viewDidLoad];
    self.title = NSLocalizedString(@"Songs", @"Search for songs");
    NSMutableArray *array = [[NSArray alloc]initWithObjects: @"Book_1", @"Book 2", @"Book _ 4", nil];
    self.booksArray = array;
    [array release];
    search.delegate=self;
    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    // self.navigationItem.rightBarButtonItem = self.editButtonItem;
}
thanks TC
回答1:
Please make sure of following things.(I hope you are talking about search Button of keyboard.)
- You have connected your IBOutletof searchBar with its variablesearch.
- You are not de-referring search variable anywhere in your code(reassigning it).
- Your - (void)searchBarSearchButtonClicked:(UISearchBar *)searchBarmethod is in sameviewcontrolleras searchBar is in.
- Please NSLog(@"Search Bar Instace : %@",search); in viewDidLoad method and searchBarSearchButtonClickedand verify that both instances are same if not then you aresearchis getting reassigned somewhere in code.
- Just after [searchBar resignFirstResponder];NSLog(@"isFirstResponder : %d",[searchbar isFirstResponder]); andNSLog(@"Next Responder : %@",[searchBar nextResponder]);
- Is - (void)searchBarSearchButtonClicked:(UISearchBar *)searchBarmethod is being called when you tap search Button of keyboard? Make sure there are no keyboardresponder(liketextField,textViewor othersearchBar) is added behind yoursearchBarmay be unintentionally. Please check it through xib also.
Thanks,
回答2:
It should work by implementing the respond methods at the delegate object:
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
    [searchBar resignFirstResponder];
}
Reference: http://www.iphonedevsdk.com/forum/iphone-sdk-development/7148-problem-uisearchbar-navigation-controller.html#post59467
来源:https://stackoverflow.com/questions/5657361/hiding-keyboard-iphone-sdk