iOS UITExtField 제한 문자열 길이

1277 단어
간단한 설명: UITExtField는 문자열의 길이를 제한합니다. 예를 들어 문자열의 길이가 11자리이면 textField입니다.text.length > 10 코드는 다음과 같습니다.
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    if (textField == self.userName) {
        if (textField.text.length > 10 && string.length > 0) return NO;
    }
    
    return YES;
}

Swift
  func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
        
  
            let proposeLength = (textField.text?.lengthOfBytes(using: String.Encoding.utf8))! - range.length + string.lengthOfBytes(using: String.Encoding.utf8)
            if proposeLength > 20 { return false }

        return true
        
    }

UITExtField는 문자열에 대응하는 int 수치를 제한합니다: 예를 들어 문자열 > 100 요구
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{

    if (string.length == 0)
    {
        
    }
    else
    {
        if ([textField.text integerValue] * 10 + [string integerValue]>100)
        {
            return NO;
        }
        
    }
    return YES;
}

좋은 웹페이지 즐겨찾기