0

在您将我的问题视为与此问题的重复之前:iphone,在触摸 UITextField 之外时关闭键盘 对我来说,问题是我的文本字段是我的原型单元格的一部分,它有自己的 uitableview 单元格子类,所以我不是确定尝试辞职第一响应者时如何引用文本字段。所以,我不能这样做:

 -(void)dismissKeyboard {
   [aTextField resignFirstResponder];
}

我将如何克服这种情况?

谢谢

4

3 回答 3

1

试试这个代码,它非常有用:

-(void)touchesBegan :(NSSet *)touches withEvent:(UIEvent *)event

{

    [aTextField resignFirstResponder];

    [super touchesBegan:touches withEvent:event];

}
于 2013-02-25T07:18:34.443 回答
0

如果我猜对了,您想通过点击 outSide of 来退出键盘,textfield但您没有textfield.

尝试这个;

  • 取全局文本字段,我们称之为reftextField
  • 现在textFieldDidBeginEditing将引用的文本字段设置为

    - (void) textFieldDidBeginEditing:(UITextField *)textField{
        reftextField = textField;
    }
    
  • 现在您可以愉快地在任何按钮时钟上使用,(建议在开始编辑时添加一个透明按钮)

    - (void)dismissKeyboard {
          [reftextField resignFirstResponder];
    }
    
  • 或者对于辞职完成按钮试试这个。

    //for resigning on done button    
    - (BOOL) textFieldShouldReturn:(UITextField *)textField{
        [textField resignFirstResponder];
        return YES;
    }
    
于 2013-03-01T14:41:39.667 回答
0

我认为在表格视图单元外点击时关闭键盘并不好。用户可能会不小心触摸到外面,或者他可以在输入文本时滚动,对吗?您可以使用UITextFieldDelegate 关闭键盘

- (BOOL)textFieldShouldReturn:(UITextField *)textField
 {
   [textField resignFirstResponder]
 }
于 2013-02-25T07:19:25.877 回答