gpt4 book ai didi

ios - Objective-c 如何对 textField 进行验证

转载 作者:可可西里 更新时间:2023-11-01 03:36:15 24 4
gpt4 key购买 nike

我想防止用户不输入任何数据以及只输入空格。所以基本上必须至少有一个字符没有空格。然后我还想删除单词开头的所有空格,以便第一个字母是一个不是空格的字符。

编辑

用户必须输入一些东西,如果用户在它之前输入了几个空格,那么我想修剪这些空格。我还想防止用户只输入空格。

示例

如果用户输入名字和姓氏,如“James Dean”,我想去掉 James 和 Dean 之间的第一个空格,而不是第二个空格。

最佳答案

将您的 UIViewController 设置为您的目标 UITextFielddelegate 并实现此方法:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {

// verify the text field you wanna validate
if (textField == _nameTextField) {

// do not allow the first character to be space | do not allow more than one space
if ([string isEqualToString:@" "]) {
if (!textField.text.length)
return NO;
if ([[textField.text stringByReplacingCharactersInRange:range withString:string] rangeOfString:@" "].length)
return NO;
}

// allow backspace
if ([textField.text stringByReplacingCharactersInRange:range withString:string].length < textField.text.length) {
return YES;
}

// in case you need to limit the max number of characters
if ([textField.text stringByReplacingCharactersInRange:range withString:string].length > 30) {
return NO;
}

// limit the input to only the stuff in this character set, so no emoji or cirylic or any other insane characters
NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890 "];

if ([string rangeOfCharacterFromSet:set].location == NSNotFound) {
return NO;
}

}

return YES;
}

关于ios - Objective-c 如何对 textField 进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15403059/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com