Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向UITextField添加占位符,如何在swift中以编程方式设置占位符文本?_Swift_Uitextfield_Placeholder - Fatal编程技术网

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

向UITextField添加占位符,如何在swift中以编程方式设置占位符文本?,swift,uitextfield,placeholder,Swift,Uitextfield,Placeholder,我正在从数据库中提取一个电话号码,当用户开始在文本字段中编辑以更改该电话号码时,我希望使用数据库中当前的号码作为占位符。由于此信息随每个用户的变化而变化,我如何在swift中以编程方式进行设置?您需要首先从数据库中获取电话号码(将其转换为字符串),然后将文本字段的占位符设置为该字符串,如下所示 textField.placeholder = phoneNumberString 从数据库(核心数据)中获取所需数据,然后将其转换为字符串格式。。。说电话串 使用此行将此字符串设置为占位符文本 ph

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

您需要首先从数据库中获取电话号码(将其转换为字符串),然后将
文本字段的
占位符设置为该字符串,如下所示

 textField.placeholder = phoneNumberString

从数据库(核心数据)中获取所需数据,然后将其转换为字符串格式。。。说电话串

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

phoneTextField.placeholder = phoneString

重要的是要注意,对于阅读本文的其他人,在main.storyboard中设置占位符文本似乎会使此解决方案无效,因此在实现此解决方案之前,我必须首先清除故事板中的占位符。完成后,@khong和@Himanshu的回答非常有效。

Swift 3

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

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

将这行代码应用于查看已加载的数据

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

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

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

这就是我的工作原理,非常奇怪,将占位符设置为空字符串
fieled?.attributedPlaceholder=NSAttributedString()