iOS,Swift,UITextField更改使用打字属性输入的文本的颜色,不改变首字母的颜色

时间:2018-08-09 19:15:51

标签: ios swift uitextfield swift4

我正在尝试将要在UITextfield中键入的文本的颜色更改为白色。我使用了下面的代码,该代码可以工作,但不会将第一个字母的颜色更改为白色。请参阅随附的屏幕截图。

如何使第一个字母的颜色也变为白色?

我已经搜索了很多,但是找不到解决方案。

提前发送!

enter image description here

@IBAction func emailFieldEditingChanged(_ sender: UITextField) {

    emailTextField.typingAttributes![NSAttributedStringKey.foregroundColor.rawValue] = UIColor.white
}

1 个答案:

答案 0 :(得分:1)

您需要将代理设置为Rakesha所述,但是每次用户输入字符时都必须更改它。使用此委托方法。

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
    emailTextField.typingAttributes![NSAttributedStringKey.foregroundColor.rawValue] = UIColor.white
    return true
}

//Set this in viewDidLoad, and don't forget to include the delegate.
emailTextField.delegate = self