Safari Safari - 5 months ago 55
iOS Question

Uppercase characters in UItextfield

I have a question about

iOS UIKeyboard
.

I have a
UITextField
and I would to have the
keyboard
with only uppercase characters.

I use a
storyboard
and I tried to set the
Cpitalization
as "
All characters
" to
UITextField properties
.

But this not solve my problem...any suggestion?

Answer

Set your textfield type autocapitalizationType to UITextAutocapitalizationTypeAllCharacters on the UITextField

self.yourTexField.autocapitalizationType = UITextAutocapitalizationTypeAllCharacters;

After call delegate

// delegate method

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    NSRange lowercaseCharRange = [string rangeOfCharacterFromSet:[NSCharacterSet lowercaseLetterCharacterSet]];

    if (lowercaseCharRange.location != NSNotFound) {
        textField.text = [textField.text stringByReplacingCharactersInRange:range
                                                                 withString:[string uppercaseString]];
        return NO;
    }

    return YES;
}
Comments