美文网首页
iOS:链式编程-富文本

iOS:链式编程-富文本

作者: 豆浆油条cc | 来源:发表于2020-10-15 10:38 被阅读0次

由于项目经常使用富文本,所以对富文本NSMutableAttributedString进行封装,思路仿照masonry的方式。

调用方式:

    UILabel* label = [[UILabel alloc] initWithFrame:CGRectMake(70, 100, 200, 500)];
    label.text = @"1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890";
    label.numberOfLines = 0;
    [self.view addSubview:label];
        
    label.attributedText = [label.text cc_Attributed:^(ccAttributed * _Nonnull make) {
        make.cc_lineSpacing(20).cc_textAlignment(NSTextAlignmentLeft).cc_lineBreakMode(NSLineBreakByCharWrapping);
    }];

.h

@property (nonatomic, strong) NSMutableAttributedString *attributedStringArr;

+(instancetype)cc_string:(NSString*)string;//初始化

- (ccAttributed *)cc_merge:(ccAttributed*)attributed;//合并富文本

- (ccAttributed *(^)(UIFont *value))cc_font;//字体
- (ccAttributed *(^)(NSNumber *number))cc_kern;//字符间隔
- (ccAttributed *(^)(float value))cc_expansion;//字体扁平化
- (ccAttributed *(^)(float value))cc_obliqueness;//字体倾斜
- (ccAttributed *(^)(NSNumber *number))cc_ligature;//字符连体
- (ccAttributed *(^)(NSString *value))cc_textEffect;//文字效果
- (ccAttributed *(^)(UIColor *color))cc_strokeColor;//描绘边颜色
- (ccAttributed *(^)(UIColor *color))cc_foregroundColor;//文字颜色

- (ccAttributed *(^)(NSNumber *number))cc_underline;//下划线
- (ccAttributed *(^)(UIColor *color))cc_underlineColor;//下划线颜色

- (ccAttributed *(^)(NSNumber *number))cc_strikethrough;//删除线
- (ccAttributed *(^)(UIColor *color))cc_strikethroughColor;//删除线颜色

- (ccAttributed *(^)(NSString *value))cc_link;//链接

- (ccAttributed *(^)(NSShadow *shadow))cc_shadow;//阴影

- (ccAttributed *(^)(UIColor *color))cc_backgroundColor;//背景色

- (ccAttributed *(^)(NSNumber *number))cc_baselineOffset;//基础偏移量

- (ccAttributed *(^)(NSTextAttachment *textAttachment))cc_attachment;//附属

- (ccAttributed *(^)(NSNumber *number))cc_verticalGlyphForm;//垂直或者水平,0表示水平,1垂直

- (ccAttributed *(^)(NSParagraphStyle *value))cc_paragraphStyle;//绘图的风格(居中,换行模式,间距等诸多风格)

//插入图片(图片,尺寸,位置)
- (ccAttributed *(^)(UIImage *image,CGRect bounds,NSInteger index))cc_insertImage;

- (ccAttributed *(^)(float value))cc_lineSpacing;//行间距
- (ccAttributed *(^)(NSTextAlignment value))cc_textAlignment;//对齐方式
- (ccAttributed *(^)(NSLineBreakMode value))cc_lineBreakMode;//字符类型

GitHub:https://github.com/qw9685/ccAttributed.git

相关文章

  • iOS:链式编程-富文本

    由于项目经常使用富文本,所以对富文本NSMutableAttributedString进行封装,思路仿照mason...

  • iOS链式编程实现富文本拼接

    链式编程在实现对象的拼接上有奇效,能用最简洁的代码实现最全的功能,其中最广为人知的应该就是masonry了。合理的...

  • NSAttributedString 富文本进阶(二):链式编程

    禁止转载,谢谢配合!!! 富文本属性链式编程实现: 原因 NSAttributedString 配置属性字典的时候...

  • 富文本的链式编程

    针对于富文本的封装,想了一些如果是正常封装,扩展类然后增加一个个方法,很多时候会不全或者方法属性冗余设置起来也是比...

  • 工作iOS技术总结

    链式编程、函数式、面向接口编程思想 iOS 之ReactiveCocoa 链式编程2 WKWebView的缓存处理...

  • iOS富文本(NSAttributedString)

    iOS富文本(NSAttributedString)iOS之富文本

  • ReactiveObjC入门

    ReactiveObjC基础用法 iOS开发三种编程方式(响应式编程、函数编程、链式编程),函数编程最常用,链式编...

  • iOS 富文本如何添加图片

    iOS 富文本如何添加图片 iOS 富文本如何添加图片

  • 链式编程总结

    链式编程总结 @(iOS) 研究了一下链式编程,但是感觉项目中用处不是很多。 介绍 1.什么时候使用链式编程?在面...

  • iOS 链式编程简单的使用

    iOS 链式编程简单的使用 链式编程-顾名思义,链式,连贯性为其主要特征,放在编程领域来讲,说简单点就是把一系列的...

网友评论

      本文标题:iOS:链式编程-富文本

      本文链接:https://www.haomeiwen.com/subject/dcynpktx.html