评论的文字中间加横杠

技术软件 z197 756次浏览 已收录 用手机观看

在开发的过程中我们可能会遇到这种需求,就是在文字中间位置加一条横线,尤其是在做电商商品售价的时候,这种效果是必不可少的,有一部分人在用很笨拙的方法,我之前也用过,在这个文字上面直接加UIView,麻烦又不实用,现在又有这样的需求,我从国外的网站上学了一个大牛的方法记录一下,很简单快捷。

图片效果

    UILabel * label = [[UILabel  alloc]initWithFrame:CGRectMake(20, 50, 200, 50)];

[self.view  addSubview:label];

label.text=@"12.89";

label.textColor = [UIColor grayColor]; // 横线的颜色跟随label字体颜色改变

NSMutableAttributedString *newPrice = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"¥%@",label.text]];

[newPrice  addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlinePatternSolid | NSUnderlineStyleSingle) range:NSMakeRange(0, newPrice.length)];

label.attributedText= newPrice;

这里使用了

- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;

这个属性加横线。

好的,是不是成功的加上了横线。

(注意:眼睛比较敏锐的人很快发现这个横线不是太直,在¥与数字之间有偏差,$符号就没有这种问题,这完全是视觉效果,仔细看¥字的第一条横线正好和分割线上下重合,不信,你把¥换成别的中文字符试试)