在iOS中像在Twitter App中一样检测哈希标签#,提及标签@,

灰色代码

我需要检测描述中给出的#TagsUILabel并更改文本颜色,[UIColor BlueColor];因为我无法将特定文本颜色更改UILabel为Blue。现在我正在UILabel习惯使用它UITableViewCell有什么方法可以解决此问题,以通过文本颜色区分#Tags和普通文本?有人可以帮我解决这个问题吗?

Vijay-Apple-Dev.blogspot.com
-(NSMutableAttributedString*)decorateTags:(NSString *)stringWithTags{


    NSError *error = nil;

    //For "Vijay #Apple Dev"
    NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"#(\\w+)" options:0 error:&error];

    //For "Vijay @Apple Dev"
    //NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"@(\\w+)" options:0 error:&error];

    NSArray *matches = [regex matchesInString:stringWithTags options:0 range:NSMakeRange(0, stringWithTags.length)];
    NSMutableAttributedString *attString=[[NSMutableAttributedString alloc] initWithString:stringWithTags];

    NSInteger stringLength=[stringWithTags length];

    for (NSTextCheckingResult *match in matches) {

        NSRange wordRange = [match rangeAtIndex:1];

        NSString* word = [stringWithTags substringWithRange:wordRange];

        //Set Font
        UIFont *font=[UIFont fontWithName:@"Helvetica-Bold" size:15.0f];
        [attString addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, stringLength)];


        //Set Background Color
        UIColor *backgroundColor=[UIColor orangeColor];
        [attString addAttribute:NSBackgroundColorAttributeName value:backgroundColor range:wordRange];

        //Set Foreground Color
        UIColor *foregroundColor=[UIColor blueColor];
        [attString addAttribute:NSForegroundColorAttributeName value:foregroundColor range:wordRange];

        NSLog(@"Found tag %@", word);

    }

    // Set up your text field or label to show up the result

    //    yourTextField.attributedText = attString;
    //
    //    yourLabel.attributedText = attString;

    return attString;
}

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

像在Twitter App中一样显示相机胶卷?

来自分类Dev

如何使iOS 7控制中心的行为像在“地图”(小标签)中一样?

来自分类Dev

如何像在 Chrome 中一样在终端中切换标签页

来自分类Dev

像在相机应用中一样检测方向

来自分类Dev

与Highcharts.js中一样,在Highstock.js中显示每个系列的标签

来自分类Dev

像在iOS中一样滑动以在ListView中显示按钮

来自分类Dev

键盘处理就像在iOS 7中的消息应用程序中一样

来自分类Dev

像在iOS中一样滑动以在ListView中显示按钮

来自分类Dev

像在管理站点中的产品详细信息中一样,向用户网站中的nopcommerce产品详细信息添加标签页

来自分类Dev

像在Safari中一样检查Firefox中的元素?

来自分类Dev

像在 Java 中一样访问 PHP 中的对象

来自分类Dev

像在iOS中一样,如何在WP8中使用Prefix.pch?

来自分类Dev

像chrome或Firefox一样撕下GVIM中的标签

来自分类Dev

UISearchDisplayController像在iOS 7日历应用程序中一样

来自分类Dev

像在iOS 7日历应用中一样设置UINavigationBar的高度

来自分类Dev

像在Facebook iOS 7应用程序中一样获得漂亮的深色UIToolbar模糊

来自分类Dev

Java中的唯一随机数?(就像在C ++中一样)

来自分类Dev

是否可以像在SQL中一样将数据插入Hive中的表中?

来自分类Dev

是否可以像在SQL中一样将数据插入Hive中的表中?

来自分类Dev

如何像在Wysiwyg中一样在Quill中添加“显示html”按钮?

来自分类Dev

像在SQL Server 2008 R2中一样进行替换

来自分类Dev

是否可以像在C#中一样在Java中创建扩展?

来自分类Dev

默认情况下,像在WebStorm中一样,在PhpStorm中自动缩进

来自分类Dev

像在Perl中一样将注释嵌入JavaScript正则表达式中

来自分类Dev

像在jQuery中一样如何在AgularJS中触发事件?

来自分类Dev

像在IntelliJ中一样,在AppCode 3.0中生成文档注释

来自分类Dev

如何像在网页中一样在WPF中展开和折叠

来自分类Dev

如何像在Eclipse中一样在Android Studio中复制错误

来自分类Dev

在Java中像在Java中一样在Swift中使用套接字

Related 相关文章

  1. 1

    像在Twitter App中一样显示相机胶卷?

  2. 2

    如何使iOS 7控制中心的行为像在“地图”(小标签)中一样?

  3. 3

    如何像在 Chrome 中一样在终端中切换标签页

  4. 4

    像在相机应用中一样检测方向

  5. 5

    与Highcharts.js中一样,在Highstock.js中显示每个系列的标签

  6. 6

    像在iOS中一样滑动以在ListView中显示按钮

  7. 7

    键盘处理就像在iOS 7中的消息应用程序中一样

  8. 8

    像在iOS中一样滑动以在ListView中显示按钮

  9. 9

    像在管理站点中的产品详细信息中一样,向用户网站中的nopcommerce产品详细信息添加标签页

  10. 10

    像在Safari中一样检查Firefox中的元素?

  11. 11

    像在 Java 中一样访问 PHP 中的对象

  12. 12

    像在iOS中一样,如何在WP8中使用Prefix.pch?

  13. 13

    像chrome或Firefox一样撕下GVIM中的标签

  14. 14

    UISearchDisplayController像在iOS 7日历应用程序中一样

  15. 15

    像在iOS 7日历应用中一样设置UINavigationBar的高度

  16. 16

    像在Facebook iOS 7应用程序中一样获得漂亮的深色UIToolbar模糊

  17. 17

    Java中的唯一随机数?(就像在C ++中一样)

  18. 18

    是否可以像在SQL中一样将数据插入Hive中的表中?

  19. 19

    是否可以像在SQL中一样将数据插入Hive中的表中?

  20. 20

    如何像在Wysiwyg中一样在Quill中添加“显示html”按钮?

  21. 21

    像在SQL Server 2008 R2中一样进行替换

  22. 22

    是否可以像在C#中一样在Java中创建扩展?

  23. 23

    默认情况下,像在WebStorm中一样,在PhpStorm中自动缩进

  24. 24

    像在Perl中一样将注释嵌入JavaScript正则表达式中

  25. 25

    像在jQuery中一样如何在AgularJS中触发事件?

  26. 26

    像在IntelliJ中一样,在AppCode 3.0中生成文档注释

  27. 27

    如何像在网页中一样在WPF中展开和折叠

  28. 28

    如何像在Eclipse中一样在Android Studio中复制错误

  29. 29

    在Java中像在Java中一样在Swift中使用套接字

热门标签

归档