UITextfield keyboard with only alphabet, no numbers, no caps, no spacebar?

An easiet way would be:

if let range = string.rangeOfCharacterFromSet(NSCharacterSet.letterCharacterSet())
    return true
}
else {
    return false
}

Update for those who wants to Allow Space, Caps & Backspace Only

Swift 4.x, Swift 5.x & up

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {

    if range.location == 0 && string == " " { // prevent space on first character
        return false
    }

    if textField.text?.last == " " && string == " " { // allowed only single space
        return false
    }

    if string == " " { return true } // now allowing space between name

    if string.rangeOfCharacter(from: CharacterSet.letters.inverted) != nil {
        return false
    }

    return true
}

Tags:

Ios

Xcode

Swift