NudeIn全新的富文本工具
NudeIn是一个基于UITextView的iOS端富文本控件,它的书写风格类似于masonry。NudeIn采用优雅的声明式(链式)方法定义富文本控件,所需代码量相当短,且非常直观易用。你是否厌倦了繁琐的代码?那NudeIn一定会让你眼前一亮。相比于传统的编程方式,NudeIn减少了大量冗余代码,提高了开发效率。
不仅如此,NudeIn是一款非常灵活的富文本控件,它能将减少代码冗余提高到极致。在处理多于两个风格一致或部分一致的富文本时,NudeIn通过引入模板机制,轻松解决了代码重复的问题。你只需声明一个模板,并应用到任何需要它的组件上,每个组件还可以声明自己的属性来覆盖模板上的属性。这种灵活性让NudeIn变得与众不同。
对于那些担心学习成本的开发者来说,NudeIn是最符合人类思维方式的富文本控件。拥有masonry经验的你,几乎不需要额外学习;即便没有经验,也无需担心,只需稍微看看例子,就可以完全掌握使用方法。NudeIn的用法非常简单明了,下面是一个非常简单的例子,肯定会让你惊艳不已,一旦用起来就会爱不释手:
- 引入控件:
```objective-c
#import "NudeIn.h"
```
- 声明控件为你的成员变量:
```objective-c
@property (nonatomic, strong) NudeIn *attrLabel;
```
- 使用链式方法定义富文本:
```objective-c
_attrLabel = [NudeIn make:^(NUDTextMaker *make) {
make.text(@"this a ").font(14).color([UIColor blackColor]).attach();
make.text(@"BlueLink").font(17).color([UIColor blueColor]).link(self, @selector(linkHandler:)).attach();
make.text(@", and this a ").font(14).color([UIColor blackColor]).attach();
make.text(@"RedLink").font(17).color([UIColor redColor]).link(self, @selector(linkHandler:)).attach();
}];
```
- 对声明了link属性的部分定义回调:
```objective-c
-
(void)linkHandler:(NUDAction *)action {
if ([action isKindOfClass:[NUDLinkAction class]]) {
NUDLinkAction *linkAction = (NUDLinkAction *)action; UIAlertController *alertController = [UIAlertController alertControllerWithTitle:linkAction.string message:nil preferredStyle:UIAlertControllerStyleAlert]; [alertController addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {}]]; [self presentViewController:alertController animated:YES completion:nil];
}
}
```
感兴趣吗?想要了解更多关于NudeIn的应用和技巧吗?你可以访问以下链接获取更多详情和示例:
NudeIn的出现,是否让你感到豁然开朗呢?不妨动手试试,相信你会被它的简洁与强大所征服!