Ich suche nach einer Möglichkeit, Zeichen im Textfeld zu minimieren. Da das Textfeld für die Eingabe des Benutzernamens dient, möchte ich die Eingabe von 4 Zeichen auf maximal 30 Zeichen festlegen. Zuerst habe ich textfield shouldChangeCharactersIn
gemacht, um maximale Zeichen im Textfeld zu setzen. Der Code sieht gut aus, aber das Problem, wenn ich Benutzer machen möchte, wenn das Textfeld für den Benutzernamen weniger als 4 Zeichen hat, gibt die App einen Fehler oder eine falsche Antwort zurück.Wie setze ich Textfeld minimale Zeichen auf swift 3
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let currentString = usernameTextField.text!.characters.count ?? 0
if (range.length + range.location > currentString) {
return false
}
let newLength = currentString + string.characters.count - range.length
return newLength <= 30
}
Irgendwelche Hilfe?
Das Problem ist, wenn jeder Benutzer usernameTextField kleiner als 4 und größer als 30 Zeichen gibt es gibt ihm eine falsche. Ich habe den letzten Teil (größer als 30 Zeichen) gemacht, aber ich konnte keine Lösung für weniger als 4 Zeichen finden – user2508528
Dies ist nicht der richtige Ansatz. Dieser Code ermöglicht es weiterhin, die Tastatur zu schließen, auch wenn das Textfeld zu kurz oder zu lang ist. – rmaddy