在Mac Catalyst上更改UITextField或UITextView的提示颜色



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

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

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

我尝试失败。tintColor

代码+iOS和Mac Catalyst结果

经过大量搜索,我想我已经找到了解决方法。您可以使用键值编码范式来获取insertionPointColor属性(这是您最终需要设置的(。以下是将插入符号颜色设置为红色的示例。请注意,只有在针对Mac Catalyst时才这样做,因为在iOS上使用tintColor是正确的。

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

截至2022年,这适用于在Mac上运行的Mac Catalyst构建上的UITextFieldUITextView

最新更新