扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
当我们要显示不同颜色字体,下划线,删除线等等一些特殊属性时,我们就必须要利用富文本(NSMutableAttributedString)来实现。
创新互联是专业的镇宁网站建设公司,镇宁接单;提供成都网站设计、网站制作、外贸营销网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行镇宁网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
实现富文本技术主要分为三类:ceretext、textkit、webview。这三类各有优劣,开发的难度、方式、用户体验也是有非常大的不同,这里不详细说明,具体的可以找度娘。
NSString *text=@Hello Everyone!This is an article which introduce how to use NSAttributedString in iOS\n这段文字需要保持每行的缩进。为了实现这种效果,我们需要使用NSAttributedString.\n剩下的都是废话,凑字数用的。
当然是先有窗体了---新建窗体,点击项目,添加,窗体 。然后添加各种控件,并在富文本框中输入文本,如下图所示。
richtextbox就是富文本框,可以设置设置字体的颜色和样式。
以Tkinter为例,可以使用Text控件来实现富文本编辑器,并使用insert()方法来添加内容。
NSAttributedString可以让我们使一个字符串显示的多样化,但是目前到iOS 5为止,好像对它支持的不是很好,因为显示起来不太方便(至少没有在OS X上方便)。
解决方案首先我想到的是把耗时操作放在子线程来操作 解决方案 因为是cell展示,所以只需要展示文本信息就行,那就过滤掉HTML标签,瞬间解决所有问题。
在OSX上我们只需解析完毕相应的数据,准备好NSAttributedString即可,底层的绘制完全可以交给相应的控件完成。但是在iOS上就没有这么方便,想要绘制Attributed String就需要用到CoreText了。(当然iOS6之后已经有AttributedLabel了。
要使UILabel显示不同的字体,需要设置其 attributedText属性 该属性是NSMutableAttributedString/NSAttributedString类型;NSAttributedString是一个带有属性的字符串,通过该类可以灵活地操作和呈现多种样式的文字数据。
设置行间距,字间距等都是对字符串的处理,这里需要用到富文本 NSAttributedString 或 NSMutableAttributedString ,设置其属性即可。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流