我想知道在iOS中改变UITextField(和UITextView如果答案相同)中的光标/插入符号的颜色。我看到过OSX开发的答案,但没有iOS的答案。
这可能吗?
我想知道在iOS中改变UITextField(和UITextView如果答案相同)中的光标/插入符号的颜色。我看到过OSX开发的答案,但没有iOS的答案。
这可能吗?
当前回答
在iOS7中,你可以简单地改变textField的tintColor
其他回答
斯威夫特3:
UITextField.appearance().tintColor = UIColor.black
UITextView.appearance().tintColor = UIColor.black
我认为如果你想要一些自定义颜色,你可以去资产。xcassets文件夹,右键单击并选择新的颜色设置,一旦你创建了你的颜色设置,给它一个名字来重用它。
你可以这样使用它:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
UITextField.appearance().tintColor = UIColor(named: "YOUR-COLOR-NAME") #here
}
}
在macOS 10.15 / iOS 13 / Swift 5上测试
如果你的目标系统是iOS 7+,这就简单多了。简单地改变tintColor字段的游标使用外观代理,它将应用于整个应用程序:
斯威夫特3.0:
UITextField.appearance().tintColor = .black
objective - c:
[[UITextField appearance] setTintColor:[UIColor blackColor]];
同样的答案适用于一个单独的UITextField:
斯威夫特3.0:
myTextField.tintColor = .black
objective - c
[myTextField setTintColor:[UIColor blackColor]];
斯威夫特4
在viewDidLoad()中只调用下面的代码:
代码示例
//txtVComplaint is a textView
txtVComplaint.tintColor = UIColor.white
txtVComplaint.tintColorDidChange()
在iOS7中,你可以简单地改变textField的tintColor