在按下完成或uitextfield的返回键时调用函数

Posted

技术标签:

【中文标题】在按下完成或uitextfield的返回键时调用函数【英文标题】:call function on Pressing Done or return key of uitextfield 【发布时间】:2014-06-02 09:15:05 【问题描述】:

我想在按下 uitextfied 的完成键时执行一些任务 我曾经尝试过这种方式

 -(void)textFieldShouldReturn:(UITextField *)textField
 
   [textField resignFirstResponder];
   [self myfuction];
  

但是什么都没发生

【问题讨论】:

【参考方案1】:

您是否设置了 delegateUITextField ?比如

myTextFieldObj.delegate = self;

如果是,那么在myfuction 的主体处放置断点并检查它是否有效?

编辑

委托方法应该是

- (BOOL)textFieldShouldReturn:(UITextField *)textField

NOT -(void)textFieldShouldReturn:(UITextField *)textField ,它的返回 BOOL 不是 void 所以你的代码应该是..

- (BOOL)textFieldShouldReturn:(UITextField *)textField

   [textField resignFirstResponder];
   [self myfuction];
   return YES;

【讨论】:

searchBarTextField.returnKeyType = UIReturnKeyDone; [searchBarTextField setDelegate:self]; 谢谢我已经解决了我用你的建议替换了 [searchBarTextField setDelegate:self] searchBarTextField.delegate = self;及其工作 @user3262371 - 好的..您还需要将您的委托方法 void 更改为 BOOL 返回类型,如果对您有帮助,请接受我的回答。

以上是关于在按下完成或uitextfield的返回键时调用函数的主要内容,如果未能解决你的问题,请参考以下文章

按下返回按钮时在 UITextField 之间切换

UITextField.Text 内容在按下 UIButton 后消失

Mac上的DatePicker在按下返回键之前不会保存日期

按下返回键时如何在下一个 UITextField 上移动控件

如何在按下按钮时从UITextField更新标签

滚动到包含某个 UITextField 的 UITableViewCell