美文网首页iOS学习
iOS8.0 字符串部分字符中划线

iOS8.0 字符串部分字符中划线

作者: 34码的小孩子 | 来源:发表于2017-03-22 11:46 被阅读552次

如果整个字符串设置中划线,使用以下方法:

NSMutableAttributedString *attri = [[NSMutableAttributedString alloc] initWithString:string];
[attri addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlinePatternSolid | NSUnderlineStyleSingle) range:NSMakeRange(0, length)];
[attri addAttribute:NSStrikethroughColorAttributeName value:label.textColor range:NSMakeRange(0, length)];

如果是部分字符串(subString)设置中划线,与上面相似,可以使用一下方法:

NSRange range = [string rangeOfString:subString];
NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:string];

[attr addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlineStyleSingle | NSUnderlinePatternSolid) range:range];
[attr addAttribute:NSStrikethroughColorAttributeName value:label.textColor range:range];

但是在iOS8上面的方法设置中划线无效,需要使用以下方法:

NSRange range = [string rangeOfString:subString];
NSMutableAttributedString *attri = [[NSMutableAttributedString alloc] initWithString:string attributes:@{NSStrikethroughStyleAttributeName: @(NSUnderlineStyleNone)}];
[attri addAttribute:NSStrikethroughStyleAttributeName value:@(NSUnderlineStyleSingle) range:range];

相关文章

网友评论

    本文标题:iOS8.0 字符串部分字符中划线

    本文链接:https://www.haomeiwen.com/subject/zkconttx.html