以编程方式设置UITextField占位符颜色

use*_*935 9 uitextfield swift

如何在swift中以编程方式设置UITextField占位符颜色?

Kos*_*val 19

1 - 使用您想要的颜色创建一个AttributedString.
2 - 将此AttributedString设置为textfield attributesPlaceholder属性

let placeholder = NSAttributedString(string: "Some", attributes: [NSForegroundColorAttributeName : UIColor.redColor()])
let textField = UITextField(frame: CGRect(x: 0, y: 0, width: 100, height: 30));
textField.attributedPlaceholder = placeholder;
self.view.addSubview(textField)
Run Code Online (Sandbox Code Playgroud)

来自苹果文档

var attributedPlaceholder: NSAttributedString!
默认情况下,此属性为零.如果设置,则使用70%灰色和属性字符串的剩余样式信息(文本颜色除外)绘制占位符字符串.为此属性分配新值也会使用相同的字符串数据替换占位符属性的值,尽管没有任何格式设置信息.为此属性指定新值不会影响文本字段的任何其他与样式相关的属性.