Day 8:TLTagsControl,一个使用方便可以滚动的标签,支持固定和编辑模式

地址如下:

https://github.com/ali312/TLTagsControl

TLTagsControl一个使用方便可以滚动的标签,支持固定和编辑模式。 我们在项目中如有类似标签需求,可以考虑使用此开源类库。

效果如下:

TLTagsControl

 

核心代码位于自定义View:TLTagsControl中,继承自UIScrollView。

常用属性和方法有:

@property (nonatomic, strong) NSMutableArray *tags;
@property (nonatomic, strong) UIColor *tagsBackgroundColor;
@property (nonatomic, strong) UIColor *tagsTextColor;
@property (nonatomic, strong) UIColor *tagsDeleteButtonColor;
@property (nonatomic, strong) NSString *tagPlaceholder;
@property (nonatomic) TLTagsControlMode mode;

@property (assign, nonatomic) id<TLTagsControlDelegate> tapDelegate;

- (id)initWithFrame:(CGRect)frame andTags:(NSArray *)tags withTagsControlMode:(TLTagsControlMode)mode;

- (void)addTag:(NSString *)tag;
- (void)reloadTagSubviews;

 

我们需要重点关注addTag方法、reloadTagSubviews方法、layoutSubviews。

在addTag方法中用于新增一个tag,如果tag name已存在,则忽略添加。

reloadTagSubviews用于初始化tabview 、labelview、deletebutton等等。

layoutSubviews用于tag view布局。

 

具体内容可详细阅读代码。

 

这个demo大家可以学到的知识有:

1、自定义view

2、layoutSubviews重写

3、UITextField代理方法

4、UITapGestureRecognizer的使用

本文来自Awnlab.com麦芒实验室,转载请注明出处,谢谢合作。