Pour une raison quelconque, même si je désactive le plafonnement automatique et la correction automatique de mon UITextField, il capitalise toujours la première lettre de mon entrée.
Voici le code:
UITextField* textField = [[[UITextField alloc] initWithFrame:CGRectMake(90.0, 10.0, 213.0, 25.0)] autorelease];
[textField setClearButtonMode:UITextFieldViewModeWhileEditing];
textField.returnKeyType = UIReturnKeyGo;
textField.autocorrectionType = FALSE;
textField.autocapitalizationType = UITextAutocapitalizationTypeNone;
textField.delegate = self;
if (inputFieldType == Email) {
label.text = @"Email:";
textField.keyboardType = UIKeyboardTypeEmailAddress;
emailTextField = textField;
textField.placeholder = @"Email Address";
} else { // password
textField.secureTextEntry = TRUE;
label.text = @"Password:";
if (inputFieldType == Password){
textField.placeholder = @"Password";
passwordTextField = textField;
}
if (inputFieldType == ConfirmPassword){
textField.placeholder = @"Confirm Password";
confirmPasswordTextField = textField;
}
}
Voir capture d'écran: texte alternatif http://grab.by/39WE
Vous définissez autocorrectionType
sur FALSE
comme s'il s'agissait d'un BOOL
, mais il a en fait le type UITextAutocorrectionType
. Ainsi, FALSE
est interprété comme UITextAutocorrectionTypeDefault
, ce qui signifie que la correction automatique est probablement activée.
Je parie qu'il a trouvé le nom "Phil" dans votre carnet d'adresses et corrige automatiquement la mise en majuscule.
Objectif - C
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
textField.autocorrectionType = FALSE; // or use UITextAutocorrectionTypeNo
textField.autocapitalizationType = UITextAutocapitalizationTypeNone;
}
rapide
func textFieldDidBeginEditing(textfield : UITextField)
{
textField.autocorrectionType = .No
textField.autocapitalizationType = .None
textField.spellCheckingType = .No
}
Swift
func textFieldDidBeginEditing(_ textField : UITextField)
{
textField.autocorrectionType = .no
textField.autocapitalizationType = .none
textField.spellCheckingType = .no
}
yourTextFieldName.autocorrectionType = UITextAutocorrectionTypeNo;
yourTextFieldName.autocapitalizationType = UITextAutocapitalizationTypeNone;
Swift 2:
textField.autocorrectionType = .No
textField.autocapitalizationType = .None