DTCoretext使用

原创 2013年12月03日 10:39:29

介绍

DTCoretext在github上的地址https://github.com/Cocoanetics/DTCoreText

安装

官网github上的安装教程地址https://github.com/Cocoanetics/DTCoreText/blob/develop/Documentation/Setup%20Guide-template.markdown。我的项目是用git管理的,第一种方式是用cocoapods这个第三方管理库的工具去安装DTCoretext,很多人都诟病,所以放弃。 第二种方式是把DTCoretext作为一个子项目,这个方式比较多坑,看看唐巧这篇文章《Git Submodule的坑》http://blog.devtang.com/blog/2013/05/08/git-submodule-issues/,所以也不适用。
所以我自己找到适合自己项目的安装步骤是:

  • 在终端运行这两个命令 git clone --recursive https://github.com/Cocoanetics/DTCoreText.git Externals/DTCoreText 把DTCoretext的项目资源拷贝下来,然后把的.git文件都删掉。
  • 在自己的项目建一个名叫Externals的包,然后把DTCoretext的文件copy到项目文件Externals里面,最后,打开项目文件中的Externals里面的DTCoretext,把DTCoretext.xcodeproj拖到项目工城中。
  • 添加库
    • libDTCoreText.a (target from the DTCoreText sub-project)
    • libxml2.dylib
    • ImageIO.framework
    • QuartzCore.framework
    • CoreText.framework
    • MobileCoreServices.framework
  • 设置Header Search Paths 
  • 设置Linker Flags 如果xcode4.6之前的还需要添加-all_load.

使用DTAttributedTextCell

DTCoretext有三方面的内容DTAttributedTextView, DTAttributedLabelDTAttributedTextCell DTAttributedTextCell是UITableViewCell的子类,可以看到关于它的方法和属性的官方文档https://docs.cocoanetics.com/DTCoreText/Classes/DTAttributedTextCell.html。它一般用在当列表中每个cell都有图文排版的情况。当每个cell的排版都能用html和css很方便排版的时候,那是比较容易处理的。但是我发现当css中display实现多个div标签在同一行的时候,这个css样式DT是不能解析的,是显示不了效果的。鉴于这个理由和一些别的点击事件需要,我用了另外一个方式去改良一下。
首先,我继承了DTAttributedTextCell这个类,取名叫MyCell吧。假如每个cell都有标题区和内容区,当然标题区可能还有作者信息,发表时间等,而且标题区还有点击事件。这样,内容区我会用html和css去排版,具体怎么排版就不多说,这样DT直接解析,而且空留一个空间给标题区,也就是用css把内容区往下移一些。
然后,我就可以用UIControl去显示标题区,然后直接insertSubview到MyCell的contentview上,但是,应该这样写 [self.contentView insertSubview:titleView aboveSubview:self.attributedTextContextView]; self指的是MyCell,titleView就是要标题区域的View。uicontrol可以直接写监听事件,这样就能解决DT不能解析的css排版问题,另外也能更直接的就对一些区域进行时间监听。

iOS开发小记:iOS富文本框架DTCoreText在UITableView上的使用

本文介绍了如何使用DTCoreText在UITableView上显示文字和图片的内容。

iOS资料-插件&第三方&文章

文/零距离仰望星空(简书作者) 原文链接:http://www.jianshu.com/p/f6cdbc8192ba 著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。原文出处:cod...

(转)iOS及Mac开源项目和学习资料【超级全面】

 (转)iOS及Mac开源项目和学习资料【超级全面】 原文地址:http://codecloud.net/ios-mac-study-5155.html ------------...

DTCoretext的导入和简单使用------ 国外大牛的图文混排

1.DTCoretext在github上的地址https://github.com/Cocoanetics/DTCoreText,但是从git上下载的会报错。 2.按照以下步骤: 在终...

DTCoreText的集成

DTCoreText的集成 字数715 阅读253 评论8 喜欢6       由于项目中要处理富文本,加载html字符串,所以就选择了DTCoreText这个第三方库。这个框架很坑爹...

dtcoretext概要

GitHub: https://github.com/Cocoanetics/DTCoreText 接口文档说明: https://docs.cocoanetics.com/DTCoreText...

DTCoreText 要点记录

DTCoreText: 主要用于,富文本处理。自带了HTML标签解析,文本渲染(主要封装了CoreText)。 主要方法: /** Initializes and returns a new `N...

DTCoreText的集成

由于项目中要处理富文本,加载html字符串,所以就选择了DTCoreText这个第三方库。这个框架很坑爹啊,以往的第三方库直接Download,拖入自己的项目中就能用,这个库却不行,下载下来缺少文件,...

UILabel,DTAttributedLabel 关于计算高度

UILabel 在UITableView中显示时一般要提前计算好高度,网上普遍的解决方案是用constrainedToSize函数 CGSize strSize = [str sizeWithFon...
  • westice
  • westice
  • 2013年06月23日 20:52
  • 2010

DTAttributedLabel 使用方法

UILabel不能调整行距,改变文字颜色,响应文字点击。 DTAttributedLabel可以满足这些需求,这个组件在DTCoreText框架中,在github上下载即可。 DTAttribut...
  • westice
  • westice
  • 2013年06月24日 18:39
  • 3023
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DTCoretext使用
举报原因:
原因补充:

(最多只允许输入30个字)