UITextField textColor 在 iOS10 中更新,而不是在 iOS 11 中更新

UITextField textColor updates in iOS10, not in iOS 11

我的代码片段很小:

self.textField.textColor = color

这是为了响应用户交互而调用的。它已经工作多年。在我的 iOS 10 设备上它仍然有效。在我的 iOS 11 设备上,颜色不会改变,直到我点击文本字段。

错误?特征?解决方法?欢迎提出建议。

您可能需要 update/reset 您的 UITextField 文本在颜色更改后立即:

self.textField.textColor = color
self.textField.text = "Hi! I've changed of color!!"

Andrew更新,更实用的东西:

 self.textField.textColor = color
 self.textField.text =  self.textField.text

我可以通过在上面引用的单行下面添加这一行来触发文本颜色更改生效:

self.textField.text = self.textField.text

但是,考虑到上述事实,在我看来它仍然像是我代码之外的错误。或者,至少,隐式 class 合同的变化。