ios – 带有NSAttributedString的UITextView和自定义属性不起作用

ios – 带有NSAttributedString的UITextView和自定义属性不起作用,第1张

概述使用UITextView时,我尝试将自定义属性添加到属性字符串.但是,在分配到UITextView的attributedText后,所有自定义键都会丢失.像这样: NSMutableAttributedString *lString = [[ NSMutableAttributedString alloc ] initWithString: @"astring" 使用UITextVIEw时,我尝试将自定义属性添加到属性字符串.但是,在分配到UITextVIEw的attributedText后,所有自定义键都会丢失.像这样:
NSMutableAttributedString *lString = [[ NSMutableAttributedString alloc ] initWithString: @"astring"                                             attributes: @{ @"customkey": @"customvalue" }];NSLog(@"string: %@",lString);  // shows customkey presenttextVIEw.attributedText = lString;NSLog(@"result: %@",self.textVIEw.attributedText);   // shows customkey missing

这应该有用吗?

解决方法 根据评论,您试图滥用NSAttributedString.NSAttributedString和UITextVIEw仅用于处理记录的属性.您可能最初可以在字符串中存储自定义属性,但是一旦文本视图开始处理属性文本并且您向文本视图询问最新的属性文本,文本视图将很快消除任何自定义属性.

更好的解决方案是创建一个扩展UITextVIEw的类.您的子类应添加一个属性,该属性可以包含您想要的任何自定义属性.或者您的自定义类可能会覆盖attributedText和’setAttributedText:`方法.这些将负责保存和恢复在属性字符串中找到的任何自定义属性.

注意:此答案适用于iOS 6及更早版本.对于iOS 7,请参阅下面的@ julIEn_c的回答.

总结

以上是内存溢出为你收集整理的ios – 带有NSAttributedString的UITextView和自定义属性不起作用全部内容,希望文章能够帮你解决ios – 带有NSAttributedString的UITextView和自定义属性不起作用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1102423.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存