将占位符添加到UITextField,如何在swift中以编程方式设置占位符文本?

时间:2016-05-03 03:58:26

标签: swift uitextfield placeholder

我从数据库中提取电话号码,当用户开始在文本字段中编辑以更改该电话号码时,我想使用我当前在数据库中的号码作为占位符。由于此信息随每个用户而变化,如何在swift中以编程方式设置它?

7 个答案:

答案 0 :(得分:30)

您需要先从数据库中获取电话号码(将其转换为字符串),然后将placeholder的{​​{1}}设置为该字符串,如此

textField

答案 1 :(得分:6)

Swift 3

如果textField有文本,则需要先将text属性设置为nil,然后设置占位符文本:

textField.text = nil
textField.placeholder = "My Placeholder Text"

答案 2 :(得分:4)

对于阅读此内容的其他人来说,重要的是要注意,在main.storyboard中设置占位符文本似乎会使此解决方案无效,因此我必须先在故事板中清除占位符,然后再执行此操作。一旦完成,@ Khuong和@ Himanshu的答案就完美了。

答案 3 :(得分:1)

从数据库中获取所需数据(核心数据)并将其转换为字符串格式后...说phoneString

使用此行将此字符串设置为占位符文本

phoneTextField.placeholder = phoneString

答案 4 :(得分:1)

将此行代码应用于View Did Load

new_Password.attributedPlaceholder =
            NSAttributedString(string: " New Password", attributes: [NSForegroundColorAttributeName : UIColor.white]) // new_Password : our text feild name

答案 5 :(得分:0)

Objective-C代码:

[usernameText setPlaceholder:@"My Placeholder Text"];

答案 6 :(得分:0)

请注意,如果您已通过编程方式更改了文本字段的文本和背景颜色,则无法使用占位符文本的颜色来做到这一点,而必须设置一个属性占位符。如果您的设备处于“暗模式”,并且试图手动制作非暗模式屏幕,则可能会出现问题-您可能看不到占位符!