0

我在表格中将 UITextField 设置为 DataEntry 单元格,并且在视图底部有 2 个选项卡。

我在我的文本字段“参考信息”中设置了占位符文本,用户完全可以不输入任何内容。但

如果他们单击该字段然后不输入任何内容,则除非他们离开屏幕,否则他们实际上无法关闭键盘。

有没有办法隐藏键盘或使“完成”始终可用,即使他们没有在字段中输入文本?

我相信我已经处理了清除按钮,并且退格了任何输入的文本,我只是无法让 Nothing done 解雇。

我不喜欢使用计时器来清除/关闭,如果我能找到答案,我会删除它。

-(BOOL)textFieldShouldClear:(UITextField *)textField
{
    NSLog(@"should clear");

 [NSTimer scheduledTimerWithTimeInterval:0.01 
          target:self selector:@selector(dismiss) 
          userInfo:nil repeats:NO] ;
    return YES;
}

-(void)dismiss
{
    [_referenceText resignFirstResponder];
}   

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:
      (NSRange)range replacementString:(NSString *)string
{
    if(textField.text.length == 1 && string.length==0)
    {
        textField.text = @"";
        [textField resignFirstResponder];
    }
//    NSLog(@"Orig - %@ New - %@", textField.text , string);
    return YES;
}
4

1 回答 1

0

作为参考,您需要关闭“自动启用返回键”

看似简单,却暗藏玄机。

于 2012-11-09T08:13:31.260 回答