Max length UITextField

后端 未结 18 1852
一个人的身影
一个人的身影 2020-11-30 17:42

When I\'ve tried How to you set the maximum number of characters that can be entered into a UITextField using swift?, I saw that if I use all 10 characters, I can\'t erase t

18条回答
  •  天涯浪人
    2020-11-30 18:28

    Here is my version of code. Hope it helps!
    
        func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
            let invalidCharacters = NSCharacterSet(charactersInString: "0123456789").invertedSet
    
            if let range = string.rangeOfCharacterFromSet(invalidCharacters, options: nil, range:Range(start: string.startIndex, end: string.endIndex))
            {
                return false
            }
    
            if (count(textField.text) > 10  && range.length == 0)
            {
                self.view.makeToast(message: "Amount entry is limited to ten digits", duration: 0.5, position: HRToastPositionCenter)
                return false
            }
            else
            {
    
            }
    
            return true
        }
    

提交回复
热议问题