Skip to content

ZYanMing/YMLabel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

YMLabel

两种使用方式: 第一种 遵守YMLabelDelegate

    YMLabel *label = [[YMLabel alloc] initWithFrame:frame];
    label.backgroundColor = [UIColor blackColor];
    label.textColor = [UIColor whiteColor];
    label.numberOfLines = 0;
    
    label.regexStringArray = @[@"《.*?》"];
    NSString *text = @"今天看《西游记》,明天看《三国演义》,后面就是随便写的啦啦啦啦啦啦啦啦啦啦,适合呢么不重要了,最后来个《红楼梦》吧";
    
    // 下面的二选一都可以
    label.text = text;
//    label.attributedText = [[NSAttributedString alloc] initWithString:text];

    // 符合正则表达式的文字颜色
    label.regexTextColor = [UIColor yellowColor];
    // 符合正则表达式的文字 点击时的背景颜色
    label.regexBackgroundColor = [UIColor whiteColor];
    
    label.delegate = self;
    [self.view addSubview:label];

实现代理方法

- (void)didSelectedOnLabel:(UILabel *)label selectedText:(NSString *)text range:(NSRange)range rangIndex:(NSInteger)index
{
    NSLog(@"选中的文字是:%@ 选中的范围是%@ 第%li个", text, [NSValue valueWithRange:range], (long)index);
}

第二种方法 初始化方法用- (instancetype)initWithFrame:(CGRect)frame seletedBlock:(SelectedBlock)block; 设置属性同第一个方法 示例:

YMLabel *label = [[YMLabel alloc] initWithFrame:frame seletedBlock:^(UILabel *label, NSString *text, NSRange range, NSInteger index) {
        NSLog(@"选中的文字是:%@ 选中的范围是%@ 第%li个", text, [NSValue valueWithRange:range], (long)index);
    }];

示例

About

指定文字添加点击事件

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published