iOS富文本使用指南: 1、封装富文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与富文本互转
2021/7/1 14:23:25
本文主要是介绍iOS富文本使用指南: 1、封装富文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与富文本互转,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
引言 I、封装富文本API,采用block实现链式编程iOS开发效率工具:完整SDK源码【封装富文本API,采用block实现链式编程】(block 的妙用:结合block和方法的优点实现iOS的链式编程)
- 部分API
- 用法例子
NSMutableAttributedString *xx = [[NSMutableAttributedString alloc]init]; xx.kn_addString(@"封装富文本API").kn_fontColor(UIColor.redColor).kn_addString(@"采用block实现链式编程").kn_fontColor(UIColor.blueColor).kn_addString(@"!");II、超链接属性的应用案例
- iOS 自定义视图:《用户协议及隐私政策》弹框(包含超链接属性)【本文包含完整demo源码,demo支持中英文切换】
III、HTML字符串与富文本互转4《用户协议及隐私政策》 弹框的实现步骤: 4.1、自定义TextView,采用富文本属性进行内容设置attributedText(包括下划线NSUnderlineStyleSingle、超链接NSLinkAttributeName 、颜色NSForegroundColorAttributeName 等信息) 4.2、实现代理方法textView:shouldInteractWithURL:inRange,处理点击超链接的回调(打开对应URL Webview)
- html->NSAttributedString
NSString *html = @"<p style='color:green'>博客<span style='color:#e83c36;'><a>https://kunnan.blog.csdn.net/<a/></span><br/>微信公众号:<span style='color:red'>iOS逆向</span><br/>“订阅”一次 ,享受终身服务的快乐。</br><span style='color:red'>专注《iOS应用逆向与安全》</span>(包括iOS基础)</p>"; NSAttributedString *attStr = [[NSAttributedString alloc] initWithData:[html dataUsingEncoding:NSUnicodeStringEncoding] options:@{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType} documentAttributes:nil error:nil];IV、富文本在适配系统API的应用例子
4.1 适配iOS13UI控件UITextField的_placeholderLabel 私有API
- 问题:iOS13无法直接访问_placeholderLabel.textColor
- 解决方案:使用 NSMutableAttributedString 富文本attributedPlaceholder来替代KVC访问 UITextField 的 _placeholderLabel。
+ (void)setupUITextField4attributedPlaceholder:(UITextField*)textField{ textField.attributedPlaceholder = [[NSAttributedString alloc] initWithString:@"placeholder" attributes:@{NSForegroundColorAttributeName:kTextPlaceholderColor, NSFontAttributeName:kTextFont(13) }]; }
这篇关于iOS富文本使用指南: 1、封装富文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与富文本互转的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-108年老开发现状 | 从外包干到了开一家自己的公司
- 2025-01-08救命的建议!给入行前端的朋友们唠点~
- 2025-01-03初学者指南:掌握HTML中的P标签
- 2025-01-03PS网页切图:新手入门教程
- 2025-01-02前端培训学习:新手入门指南
- 2025-01-02前端入门学习:从零开始的Web开发之旅
- 2025-01-02初学者指南:掌握HTML中的span标签
- 2025-01-02前端案例学习:初学者必备实战指南
- 2025-01-02前端编程学习:从零开始的Web开发入门指南
- 2024-12-29扎心了老铁!码农的「拧螺丝」之道~