简单的问题:如果我的“完成”键是Search,我怎么能够辞掉我的文本字段。从本质上讲,做我做,如果用户不希望搜索,而是要取消......resignFirstResponder for UITextField with search returnkey
感谢
简单的问题:如果我的“完成”键是Search,我怎么能够辞掉我的文本字段。从本质上讲,做我做,如果用户不希望搜索,而是要取消......resignFirstResponder for UITextField with search returnkey
感谢
您可以使用:为搜索栏取消按钮和需要实现这个SearchBar delegate
:
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
isSearching = NO; //This is a flag which specifies if searching is going on or not.
searchBar.text = @""; //Clears out search bar text
[self resetSearch]; //Reset search resets all the flags and variables.
[self.leadsTable reloadData]; //Reloads the tableView
[searchBar resignFirstResponder]; //Resigns responder from Search bar
}
这是辞职的响应,如果用户不希望搜索有道。
看看如何在UISearchBar中添加一个内置的取消按钮。检查属性 “演出取消按钮”(红色箭头高亮)
编辑:
STEP-1: 检查有条件的文本框的文本是否为空?如果是这样的resignFirstResponder为TextField。您需要委派设置为self
给出UITextField使用代码:
txtField.delegate = self;
或者您也可以通过文本域的delegate
连接到File's Owner
做到从界面生成器一样。
第2步:您需要实现此委托方法。
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
if([textField.text isEqualToString:@""])
{
[textField resignFirstResponder];
}
return YES;
}
编辑-1:
现在创建一个标有 '取消'
一个栏按钮UIToolbar一旦你做到这一点:
您可以编写一个按钮单击事件对于UIToolBar:
-(IBAction)cancelClicked:(id)sender
{
[txtField resignFirstResponder];
}
O你已经完成,你现在可以写:
txtField.inputAccessoryView = toolbarOutlet;
希望这可以帮助你。
在返回按钮上的文本是不相关的讨论。你想知道如何在不按下回车按钮的情况下退出第一响应者,并且有几种方法可以实现。
inputAccessoryView
在键盘上方的工具栏中显示单独的取消按钮。[self.view endEditing:YES]
(其中self
是您的视图控制器)。这将导致第一响应者辞职。 (这在滚动视图中非常挑剔。)UINavigationBar
,在编辑时将当前视图控制器的rightBarButtonItem
替换为取消栏按钮项目。编辑结束后,如果有的话,换回常规的右栏按钮项目。是的,这是我需要的知道。谢谢@warrenm – Apollo 2012-03-26 15:48:14
在导航栏中放置一个条形按钮,通过退出第一个响应者来隐藏键盘。 – 2012-03-26 04:47:28
同样的问题是这样的:-http://stackoverflow.com/questions/8558339/how-i-dismiss-keyboard-on-tapping-search-button-on-keyboard-regarding-uisearchba – Leena 2012-03-26 04:48:04