gpt4 book ai didi

swift - 如何更改 NSSegmentedControl 按钮的选择颜色

转载 作者:行者123 更新时间:2023-12-04 02:05:12 25 4
gpt4 key购买 nike

我正在尝试找到一种方法来更改所选控制按钮的颜色。这可能通过子类化 NSSegmentedControl 或 NSSegmentedCell 或任何其他方式吗?如果是这样,有人可以给我指路吗?

最佳答案

我以不同的方式做到了这一点,没有覆盖,只是使用了“假色”滤镜。它并不完美,因为它以某种方式稍微改变了颜色的透明度,但对我来说还可以。

class RLSegmentedControl: NSSegmentedControl {
init() {
super.init(frame: NSZeroRect)
addFilter()
}

required init?(coder: NSCoder) {
super.init(coder: coder)
addFilter()
}

func addFilter() {
let colorFilter = CIFilter(name: "CIFalseColor")!
colorFilter.setDefaults()
colorFilter.setValue(CIColor(cgColor: NSColor.white.cgColor), forKey: "inputColor0")
colorFilter.setValue(CIColor(cgColor: NSColor.black.cgColor), forKey: "inputColor1")

// colorFilter.setValue(CIColor(cgColor: NSColor.yellow.cgColor), forKey: "inputColor0")
// colorFilter.setValue(CIColor(cgColor: NSColor.black.cgColor), forKey: "inputColor1")

self.contentFilters = [colorFilter]
}
}

enter image description here

关于swift - 如何更改 NSSegmentedControl 按钮的选择颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44034851/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com