swift - NSPopUpButton 子类 attributedTitle

标签 swift macos cocoa appkit

我对如何子类化 NSPopUpButton 感到困惑,即我无法像在按钮上那样设置 attributedTitle(以获取自定义字体、颜色和基线偏移)。

以下代码无效:

class CustomPopUpButton: NSPopUpButton {
    required init?(coder: NSCoder) {
        super.init(coder: coder)
        self.wantsLayer = true
        self.layerContentsRedrawPolicy = .OnSetNeedsDisplay

        self.attributedTitle = NSAttributedString(string: self.title, attributes: [
            NSFontAttributeName: NSFont(name: "Impact", size: 15)!,
            NSForegroundColorAttributeName: NSColor(calibratedRed: 0.2, green: 0.270588235, blue: 0.031372549, alpha: 1),
            NSBaselineOffsetAttributeName: 2
        ])
    }
}

最佳答案

NSPopUpButton 显示选中的菜单项。当您设置菜单项的属性字符串时,弹出按钮将显示一个属性标题。

关于swift - NSPopUpButton 子类 attributedTitle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36926336/

相关文章:

macos - 如何使用 VMware Fusion 克隆虚拟机?

ios - XCode: UNIX [Permission denied] 尝试下载开发证书时

objective-c - 在自动引用计数 (ARC) 下,我应该在哪里放置我的 free() 语句?

xcode - 获取 cocoa 应用程序中拖放文件的路径

ios - 在 Facebook 网站上发布图片

ios - 扩展可能不包含 UItextfield 中的存储属性

ios - obj-c 项目中的 PagingMenuController swift 库错误

macos - Mac OS X Lion 上的 Tcl 8.6 安装问题

cocoa - 线程安全的 UITableView

ios - 无法快速使用 CGImageCreateWithImageInRect 裁剪触摸位置