键盘中的TextField输入限制

时间:2010-05-05 08:54:00

标签: iphone xcode

我们可以在文本字段中定义输入的限制我想在键盘应该隐藏一定数量的字符之后。我应该编写文本字段或键盘的事件。

2 个答案:

答案 0 :(得分:2)

您可以做的是在IB中的文本字段中捕获“编辑已更改”事件,并让其在您的控制器中调用IBAction,例如verifyInputLimit

在此方法中,当您达到所需尺寸时,请致电resignFirstResponder

if ([myLimitedTextField.text length]>=MY_LIMIT {
   [myLimitedTextField.text resignFirstResponder];
}

用户仍然可以将某些文字“粘贴”到此字段中,该字段大于您的限制。如果您不想这样,那么您可以使用相同的方法截断它

答案 1 :(得分:0)

覆盖UITextFieldDelegate的以下方法,

- (BOOL)textField:(UITextField *)aTextField shouldChangeCharactersInRange:(NSRange)range 
replacementString:(NSString *)string
{
    if (aTextField == tfAccNumber) {
        if (aTextField.text.length >= MAX_LENGTH && range.length == 0) {
            return FALSE;
        }
    }   
    return TRUE;
}