更改NStextView的颜色和字体

时间:2015-04-01 12:27:19

标签: macos cocoa nstextview

我正在尝试更改NSTextView的颜色和字体大小,但它似乎无法正常工作。这是我的代码。我检查了其他帖子,但它们似乎没有工作。这是我的代码。

 var area:NSRange = NSMakeRange(0, textView.textStorage!.length)
 self.textView.setTextColor(NSColor.grayColor(), range: area)
 self.textView.textStorage?.font = NSFont(name: "Calibri", size: 16)

1 个答案:

答案 0 :(得分:4)

您应该使用属性字符串:

let textView = NSTextView(frame: NSMakeRect(0, 0, 100, 100))
let attributes = [NSForegroundColorAttributeName: NSColor.redColor(),
                  NSBackgroundColorAttributeName: NSColor.blackColor()]
let attrStr = NSMutableAttributedString(string: "my string", attributes: attributes)
let area = NSMakeRange(0, attrStr.length)
if let font = NSFont(name: "Helvetica Neue Light", size: 16) {
    attrStr.addAttribute(NSFontAttributeName, value: font, range: area)
    textView.textStorage?.appendAttributedString(attrStr)
}

Playground