美文网首页
[macOS开发]NSTextField实现蓝色字体及下划线

[macOS开发]NSTextField实现蓝色字体及下划线

作者: 拳战攻城师 | 来源:发表于2019-11-22 16:16 被阅读0次

问题

如何改变NSTextField文字带下划线?
如何改变NSTextField文字颜色为蓝色?
如何只改变NSTextField部分文字为蓝色且带下划线?

最终效果

image.png

解决方案

    //标签文字都是蓝色且带下划线
    NSMutableAttributedString *linkAttrStr = [[NSMutableAttributedString alloc] initWithString:_label1.stringValue];
    [linkAttrStr addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInt:NSUnderlineStyleSingle] range:NSMakeRange(0, linkAttrStr.length)];
    [linkAttrStr addAttribute:NSForegroundColorAttributeName value:[NSColor linkColor] range:NSMakeRange(0, linkAttrStr.length)];
    [_label1 setAttributedStringValue:linkAttrStr];
    
    //只有"click here"文字是蓝色且带下划线
    NSRange range = [_label2.stringValue rangeOfString:@"click here"];
    linkAttrStr = [[NSMutableAttributedString alloc] initWithString:_label2.stringValue];
    [linkAttrStr addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInt:NSUnderlineStyleSingle] range:range];
    [linkAttrStr addAttribute:NSForegroundColorAttributeName value:[NSColor linkColor] range:range];
    [_label2 setAttributedStringValue:linkAttrStr];

相关文章

网友评论

      本文标题:[macOS开发]NSTextField实现蓝色字体及下划线

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