gpt4 book ai didi

ios - 如何检查两个文本字段是否相同?

转载 作者:行者123 更新时间:2023-12-01 19:01:02 25 4
gpt4 key购买 nike

我知道这可能会被视为重复,但我向您保证不是。

大家都给出了类似这样的答案:

if ([_confirm.text isEqualToString: _password.text] || resultantLength2 < 3) {
textField.textColor = [UIColor redColor];
[_next setEnabled:NO];

}else{
[_next setEnabled:YES];
}
}

那么为什么这不起作用呢?
- (BOOL) textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {

if (textField == _confirm || textField == _password) {
int resultantLength2 = textField.text.length + string.length - range.length;

NSLog(@"Length After Additions And Subtractions Will Be: %i letters", resultantLength2);

if ([_confirm.text isEqualToString: _password.text] || resultantLength2 < 3) {
textField.textColor = [UIColor redColor];
[_next setEnabled:NO];

}else{
[_next setEnabled:YES];
}
}
return YES;
}

我有一个禁用的下一个按钮

最佳答案

我们真正想要做的是在文本更改之后比较文本字段中的字符串,但目前,我们使用的是在文本更改之前触发的方法,并询问更改是否正常。

我们可以在这个方法中做一些技巧来让它正常工作,但是为什么不在值改变后检查它们呢?

在 View Controller 的 viewDidLoad ,添加这两行:

[_confirm addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
[_password addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];

现在添加 textFieldDidChange:方法来比较文本字段中的值。
- (void)textFieldDidChange:(UITextField *)textField {
if (![_confirm.text isEqualToString: _password.text]) {
textField.textColor = [UIColor redColor];
[_next setEnabled:NO];
} else {
[_next setEnabled:YES];
}
}

关于ios - 如何检查两个文本字段是否相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22949025/

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