UITextField

1.限制textfield的输入

//如果允许继续输入,那么返回YES,否则返回NO

//用于限制输入的内容是只能是数字   或者其他条件

//是否允许继续输入
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
    if (textField==self.userTextField) {
        // 这里的if时候为了获取删除操作,如果没有次if会造成当达到字数限制后删除键也不能使用的后果.
        if (range.length == 1 && string.length == 0) {
            return YES;
        }else if ([string isNumber]) {
            if (self.userTextField.text.length >= 11) {

                self.userTextField.text = [textField.text substringToIndex:11];

                return NO;

            }else{

                return YES;

            }

        } else {
            return NO;
        }
    } else {
        return YES;
    }
}


2.判断字数的时候需要先判断有没有高亮,没有在进行length判断,不然会判断不正确

UITextRange *selectedRange = [textField markedTextRange];

    //获取高亮部分

    UITextPosition *pos = [textField positionFromPosition:selectedRange.start offset:0];

    //没有高亮部分

    if (!pos) {

}

3.设置uitextField的placehold的字体颜色和字体大小

[textField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"];

[textField setValue:[UIFont boldSystemFontOfSize:16] forKeyPath:@"_placeholderLabel.font"];

你可能感兴趣的:(UITextField)