【发布时间】:2016-08-27 23:32:03
【问题描述】:
我正在从数据库中提取一个电话号码,当用户开始在文本字段中编辑以更改该电话号码时,我想使用我目前在数据库中拥有的号码作为占位符。由于此信息随每个用户而变化,我如何在 swift 中以编程方式对其进行设置?
【问题讨论】:
标签: swift uitextfield placeholder
我正在从数据库中提取一个电话号码,当用户开始在文本字段中编辑以更改该电话号码时,我想使用我目前在数据库中拥有的号码作为占位符。由于此信息随每个用户而变化,我如何在 swift 中以编程方式对其进行设置?
【问题讨论】:
标签: swift uitextfield placeholder
您需要先从数据库中获取电话号码(将它们转换为字符串),然后将textField 的placeholder 设置为该字符串,如下所示
textField.placeholder = phoneNumberString
【讨论】:
斯威夫特 3
如果你的textField有文本,你需要先设置text属性为nil,然后设置占位符文本:
textField.text = nil
textField.placeholder = "My Placeholder Text"
【讨论】:
对于阅读本文的其他人来说,重要的是要注意,在 main.storyboard 中设置占位符文本似乎会使此解决方案无效,因此在实施此之前,我必须先清除情节提要中的占位符。一旦完成@Khuong 和@Himanshu 的回答就完美了。
【讨论】:
将这行代码应用到 View Did Load
new_Password.attributedPlaceholder =
NSAttributedString(string: " New Password", attributes: [NSForegroundColorAttributeName : UIColor.white]) // new_Password : our text feild name
【讨论】:
fieled?.attributedPlaceholder = NSAttributedString()
从您的数据库(核心数据)中获取您想要的数据,并将其转换为字符串格式后...比如 phoneString
使用此行将此字符串设置为占位符文本
phoneTextField.placeholder = phoneString
【讨论】:
Objective-C 代码:
[usernameText setPlaceholder:@"My Placeholder Text"];
【讨论】:
请注意,如果您以编程方式更改了文本字段的文本和背景颜色,则无法使用占位符文本的颜色进行更改,而必须设置一个属性占位符。如果您的设备处于“暗模式”并尝试手动制作非暗模式屏幕,则会出现问题 - 您可能看不到占位符!
【讨论】: