Ios 安全UITextField textColor

Ios 安全UITextField textColor,ios,objective-c,uitextfield,textcolor,Ios,Objective C,Uitextfield,Textcolor,我有几个UITextFields用于注册新帐户:名称、密码等。密码文本字段在故事板中是安全的。服务器返回验证信息,例如密码是否太短等 当返回验证错误时,我将相应的textField的textColor更改为红色,以突出显示它有错误 [messages enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { NSString *validationObj = (NSString*)key; NSArray

我有几个
UITextFields
用于注册新帐户:名称、密码等。密码文本字段在故事板中是安全的。服务器返回验证信息,例如密码是否太短等

当返回验证错误时,我将相应的
textField
的textColor更改为红色,以突出显示它有错误

[messages enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
    NSString *validationObj = (NSString*)key;
    NSArray *validationMsg = (NSArray*)obj;

    if ([validationObj isEqualToString:@"password"])
        self.registerFirstNameTextField.textColor = [UIColor redColor];
当他们开始编辑文本字段时,我使用连接到
TextField
的“
EditingChanged
”事件的操作将颜色改回黑色

- (IBAction)textFieldDidChange:(id)sender {
    UITextField *textField = (UITextField*)sender;
    textField.textColor = [UIColor blackColor];
}

在模拟器中(我没有在设备上尝试过),这对所有
文本字段
(密码文本字段除外)都适用。具体来说,当我编辑密码
textfield
时,它会变为黑色,但一旦
textfield
失去焦点,安全点就会变为红色。你知道为什么会这样,以及如何修复吗?

我认为这是一个bug。我遇到了完全相同的问题,并通过在编辑结束时强制文本字段为所需的颜色来解决

- (void)textFieldDidEndEditing:(UITextField *)textField {
    if (textField == passwordTextField) {
        [textField setTextColor:defaultTextColour];
}

希望这有帮助

我认为这是一个错误。我遇到了完全相同的问题,并通过在编辑结束时强制文本字段为所需的颜色来解决

- (void)textFieldDidEndEditing:(UITextField *)textField {
    if (textField == passwordTextField) {
        [textField setTextColor:defaultTextColour];
}
希望这有帮助