小胖说事41-----iOS中在UILabel显示不同的字体和颜色,增加下划线和删除线

来源:互联网 发布:加索尔数据 编辑:程序博客网 时间:2024/05/20 05:22

增加下划线:

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 100, 300, 100)];
    label.backgroundColor = [UIColor redColor];
    label.numberOfLines = 3;
    NSMutableAttributedString *content = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:@"您的待办业务条fasdfasdfosadfjasdkljfklasjklfjasdlkjfklasdjklfjalskdjflkadsj"]];
    NSRange contentRange = {0,[content length]};
    [content addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:contentRange];
    
    label.attributedText = content;
    [self.view addSubview:label];

增加删除线:

在做优惠价格的时候需要用到删除线,但是网上的删除线千篇一律,都是大抄小抄,其实苹果的NSAttributedString就可以实现这一点啦。

代码如下:

    NSString *oldPrice = @"¥ 12345";    NSUInteger length = [oldPrice length];        NSMutableAttributedString *attri = [[NSMutableAttributedString alloc] initWithString:oldPrice];    [attri addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlinePatternSolid | NSUnderlineStyleSingle) range:NSMakeRange(2, length-2)];    [attri addAttribute:NSStrikethroughColorAttributeName value:UIColorFromRGB(0x999999, 1) range:NSMakeRange(2, length-2)];    [oldPriceLabel setAttributedText:attri];


0 0