代码:
txtField.attributedPlaceholder = NSAttributedString(string:strPlaceHolder, attributes:[NSForegroundColorAttributeName:UIColorFromRGB(color:PlaceHolderColor, alpha:1.0),NSFontAttributeName :UIFont(name: "Didot-Italic", size: 4)!])
我正在尝试更改UITextField
占位符字体类型和字体大小。它不起作用。我的代码出了什么问题?任何帮助将不胜感激。
答案 0 :(得分:5)
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
txtField.attributedPlaceholder = NSAttributedString(string:"Place holder text in here", attributes:[NSForegroundColorAttributeName: UIColor(red: 153.0/255.5, green: 153.0/255.5, blue: 153.0/255.5, alpha: 0.5)])
}
占位符属性文本将与文本字段文本属性的大小和字体相同
答案 1 :(得分:0)
你应该改变文本字段的字体属性(即txtField.font),然后设置你的占位符文本(即txtField.placeholder)
答案 2 :(得分:0)
SWIFT 5 / XCode 11:
UITextField具有一个名为.attributedPlaceholder的属性,您可以使用NSAttributedString键来分配属性。要将“ searchBoxTextField”占位符自定义为: 浅灰色文字颜色和 Times New Roman字体大小为20
尝试复制/粘贴此文件,它应该可以工作...
override func viewDidLoad() {
super.viewDidLoad()
searchBoxTextField.attributedPlaceholder = NSAttributedString(string:"Enter a Word" attributes:[NSAttributedString.Key.foregroundColor: UIColor.lightGray, NSAttributedString.Key.font :UIFont(name: "Times New Roman", size: 20)!])
}
注意:您仍然可以使用“自动版式”选择来控制用户输入的文本外观。因此,在此示例中,占位符为灰色,但是如果您为textView文本颜色选择了黑色,则当用户在框中键入内容时,它将很好地过渡。