归因于UITextField的文本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了归因于UITextField的文本相关的知识,希望对你有一定的参考价值。

我正在尝试使用UITextField的属性文本。我已经定制了我的占位符文本,但它忽略了我为主文本属性设置的值。

nameTextField.attributedText = NSAttributedString(string: "", attributes: [NSForegroundColorAttributeName : UIColor.white, NSParagraphStyleAttributeName : paraStyle, NSFontAttributeName : UIFont.init(name: "HelveticaNeue-Bold", size: 16)]);

奇怪的是,故事板中也存在一个问题。如果我在文本字段上设置值,则在我单击后立即丢失它们。

以前有人经历过吗?

答案

您想要设置typingAttributes,而不是referencedString。

试试这个:

func textFieldDidBeginEditing(_ textField: UITextField) {

    let paraStyle: NSParagraphStyle = NSParagraphStyle()
    textField.typingAttributes = [NSForegroundColorAttributeName : UIColor.white, NSParagraphStyleAttributeName : paraStyle, NSFontAttributeName : UIFont.init(name: "HelveticaNeue-Bold", size: 16)]

}
另一答案

解:

textField.defaultTextAttributes = yourAttributes // call in viewDidLoad

@ DonMag的解决方案有效,但导致内存使用问题,应用程序开始滞后(很多)。所以使用typingAttributes,在某个时间点,内存使用率上升并且从未停止并导致应用程序冻结。

以上是关于归因于UITextField的文本的主要内容,如果未能解决你的问题,请参考以下文章