【发布时间】:2012-12-27 16:09:56
【问题描述】:
我在我的应用程序中使用UISearchBar,它既可以用作编辑字段,也可以用作搜索。因此,当我想消失键盘时,我必须在 UISearchBar 中使用取消按钮,但我不能在屏幕上显示取消按钮,所以在不使用取消按钮的情况下如何让键盘消失。请帮助我,因为我是 iPhone 应用程序开发的新手。
提前致谢!
【问题讨论】:
标签: iphone iphone-softkeyboard
我在我的应用程序中使用UISearchBar,它既可以用作编辑字段,也可以用作搜索。因此,当我想消失键盘时,我必须在 UISearchBar 中使用取消按钮,但我不能在屏幕上显示取消按钮,所以在不使用取消按钮的情况下如何让键盘消失。请帮助我,因为我是 iPhone 应用程序开发的新手。
提前致谢!
【问题讨论】:
标签: iphone iphone-softkeyboard
使用这个:
[UISearchBar resignFirstResponder];
只需将单词 UISearchBar 替换为您创建的对象的名称。
【讨论】:
您是否正在寻找可以关闭键盘的方法或如何以编程方式实际执行该操作?如果以编程方式,则为[UISearchBar resignFirstResponder]。如果您正在为用户寻找一种可能的方式来实现这一点,您可以让键盘上的返回按钮在按下时放弃其第一响应者状态,或者将 UIGestureRecognizer 附加到您的视图并进行设置,以便当用户在键盘外点击,此键盘消失。
【讨论】:
您只需从 UISearchbar 获取 UITextfield 控件,然后将 UITextfield 的委托设置为将执行-(void) textFieldShouldReturn:(UITextField *)textField的任何委托
-(void)viewDidLoad{
UIView * subView;
NSArray * subViews = [searchbar subviews];
for(subView in subViews)
{
if( [subView isKindOfClass:[UITextField class]] )
{
((UITextField*)subView).delegate=self;
((UITextField*)subView).returnKeyType=UIReturnKeyDone;
break;
}
}
}
-(BOOL) textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return TRUE;
}
【讨论】: