gpt4 book ai didi

ios - 如何只阻止一个 UITextField?

转载 作者:行者123 更新时间:2023-11-28 22:00:29 24 4
gpt4 key购买 nike

在我的 iOS 应用程序中,我目前有 2 个名为 usernameTextFieldpINTextFieldUITextField。由于两者之一的长度必须为 4 位数字,因此我使用此代码来限制 pINTextField 的长度。

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
if (self.pINTextField.text.length >= 4 && range.length == 0)
{
return NO;
}

return YES;
}

奇怪的是,当用户在 pINTextField 中键入 4 位数字时,这段代码也会禁用 usernameTextField 但我希望 usernameTextField 甚至是“可键入的”用户输入 PIN 码后。

换句话说:我只想限制两个 UITextField 之一,而不限制另一个。

你能帮帮我吗?

最佳答案

1) 如果您还没有为您的文本字段定义 IBoutlet,请创建它们。

2) 然后您可以选择所需的文本字段,如下所示:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range     replacementString:(NSString *)string
{
if (self.pINTextField == textField)
{
if (textField.text.length >= 4 && range.length == 0)
{
return NO;
}
}

return YES;
}

为此目的使用标签非常脆弱。将来可能会有人出现并修改 nib 中文本字段的标签,而没有意识到它与此行为有关。

关于ios - 如何只阻止一个 UITextField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25248213/

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