【问题标题】:how do we keep the keyboard rather than dismissing it using UITextField textFieldShouldReturn?我们如何使用 UITextField textFieldShouldReturn 保留键盘而不是关闭它?
【发布时间】:2010-12-13 14:56:51
【问题描述】:

我想在输入内容后保持键盘打开,因为我正在为一个问题收集多个答案。

到目前为止,我正在打电话:

- (BOOL)textFieldShouldReturn:(UITextField*)textField {
  [textField resignFirstResponder];
  return YES;
}

但是当删除 resignFirstResponder 时,我的输入处理程序在此方法上没有得到任何响应:

- (void)textFieldDidEndEditing:(UITextField*)textField;

有人知道如何处理这个问题吗?

【问题讨论】:

    标签: objective-c iphone keyboard


    【解决方案1】:

    在我的

    中找到了我的解决方案
    - (void)textFieldDidEndEditing:(UITextField*)textField;
    

    我只是在 textField 辞职后将其返回给第一响应者:

    [textField becomeFirstResponder];
    

    【讨论】:

      【解决方案2】:

      感谢您的回复,它让我指明了正确的方向。我发现我认为更简单的解决方案:

      - (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
          return NO; // Don't hide keyboard
      }
      
      // Use "did end on exit" instead of "did end" since "did end" won't get fired
      - (IBAction)textViewDidEndOnExit{
          // Do stuff here...
      }
      

      如果您从 textFieldShouldEndEditing 返回 NO,则无需在之后调用 becomeFirstResponder。

      (我尝试将此作为对您答案的评论发布,但代码格式在那里不起作用...)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-11
        • 2017-03-28
        • 2012-01-12
        • 2011-12-02
        • 2015-07-24
        • 2015-11-16
        • 2010-09-21
        相关资源
        最近更新 更多