更改 mac 催化剂上 UITextField 的提示颜色

Change prompt color for UITextField on mac catalyst

如何以编程方式更改 mac 催化剂上 UITextField 的提示颜色?

提示存在,但颜色与 UITextField 相同。

提示在 iOS 上显示正确的颜色。

我试了没成功.tintColor

Code + iOS and Mac Catalyst result

经过大量搜索,我想我已经找到了解决方法。您可以使用键值编码范例来获取 insertionPointColor 属性(这是您最终需要设置的)。下面是将插入符颜色设置为红色的示例。小心仅在针对 Mac Catalyst 时执行此操作,因为在 iOS 上使用 tintColor 是正确的。

#if targetEnvironment(macCatalyst)
let textInputTraits = myTextView.value(forKey: "textInputTraits") as? NSObject
textInputTraits?.setValue(UIColor.red, forKey: "insertionPointColor")
#endif