字符串添加部分删除线兼容性问题

2017-08-22  本文已影响13人  TaoGeNet
下划线.jpg

IOS 中使用NSMutableAttributString 上添加删除线,开始使用

    NSString *str = [NSString stringWithFormat:@"TAO GE"];
    NSMutableAttributedString *mutableStr = [[NSMutableAttributedString alloc]initWithString:str];
    [mutableStr addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlineStyleSingle) range:NSMakeRange(4, 2)];
    [_tipsLabel setAttributedText:mutableStr];

采用该写法,IOS 8, 9, 10 都OK。

但IOS10.3 没有效果。

后来查阅添加一行代码,设置下nsmutableattributeString 基线偏移属性为0 IOS10.3 能够正常显示。

    NSString *str = [NSString stringWithFormat:@"TAO GE"];
    NSMutableAttributedString *mutableStr = [[NSMutableAttributedString alloc]initWithString:str];
    [mutableStr addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlineStyleSingle) range:NSMakeRange(4, 2)];
    [mutableStr addAttribute:NSBaselineOffsetAttributeName value:@(0) range:NSMakeRange(postiontOriginal, str.length - postiontOriginal)];
    [_tipsLabel setAttributedText:mutableStr];
上一篇下一篇

猜你喜欢

热点阅读