TBLEG
扫描微信账号

扫一扫微信二维码

iOS开发封装一个可以响应超链接的label——基于RCLabel的交互扩展

2020-05-09 信息
区块链白皮书代写 iOS开发封装一个可以响应超链接label——基于RCLabel交互扩展一、引言

        iOS系统是一个十分注重用户体验系统,在iOS系统中,用户交互方案也十分多,然而要在label中某部分字体中添加交互行为确实不容易,如果使用其他类似Button控件来模拟,文字排版又将是一个解决十分困难问题。这个问题由来是项目中一个界面中有一些广告位标签,而这些广告位标签却是嵌在文本中,当用户点击文字标签位置时,会跳转到响应广告页。

        CoreText框架和一些第三方库可以解决这个问题,但直接使用CoreText十分复杂,第三方库多注重于富文本排版,对类似文字超链接支持亦不是特别简洁,我们可以借助一些第三方东西进行针对性更强,更易用封装。

        RCLabel是一个第三方将html字符串进行文本布局工具,代码十分轻巧,并且其是基于CoreText框架,其原生性和扩展性十分强。在以前一篇博客中,我将RCLabel进行了一些改进,使其支持异步加载远程图片,并且提供了更加简洁面向应用方法,博客地址如下:

扩展于RCLabel支持异步加载网络图片富文本引擎设计:http://my.oschina.net/u/2340880/blog/499311 。

        本篇博文,将在其基础上,完成设计一个可以支持文本超链接文字视图。

二、视图类与模型类设计

        RCLabel核心之处在于将HTML文本转换为富文本布局视图,因此我们可以将要显示文本编程html字符串,将其可以进行用户交互部分进行html超链接关联,RCLabel就检测到我们点击区域进行响应逻辑回调。设计类如下:

.h文件

?
全文阅读
文章关键词
ios
超链接
RCLabel
扫描关注微信账号

试试长按二维码加关注