2016-10-05 2 views
1

Ich möchte UITextField Eingabe in Großbuchstaben Text erzwingen. Das ist, was ich tue:Nur oberer UITextField Swift

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { 
    let nsString = textField.text as NSString? 
    let newString = nsString?.replacingCharacters(in: range, with: string) 
    textField.text = newString?.uppercased() 
    return false 
} 

Gibt es eine Möglichkeit Groß UITextField zu zwingen, ohne replacingCharacterInRange von NSString mit?

Antwort

2

Es ist sehr einfach, nur tun dies

self.yourTexField.autocapitalizationType = UITextAutocapitalizationType.AllCharacters;

+0

Dies ist für die Tastatur, ich möchte den Text in Großbuchstaben. –

1

ich es gefunden!

habe ich nur noch ein Ziel meiner TextField- vom Typ UIControlEvents.editingChanged Und im Selektor ich getan habe: textField.text = textField.text?.uppercased() Hier ist der Code:

myTextField.addTarget(self, action: #selector(myTextFieldTextChanged), for: UIControlEvents.editingChanged) 

func myTextFieldTextChanged (textField: UITextField) { 
    textField.text = textField.text?.uppercased() 
} 

Das ist genau das, was ich suchte. Danke an alle!

Verwandte Themen