gpt4 book ai didi

swift - 如何将自定义样式应用于 NSTableHeaderView?

转载 作者:行者123 更新时间:2023-11-28 08:26:14 24 4
gpt4 key购买 nike

所以我想要一个自定义外观的 NSTableView。我已经成功地将 NSTableRowViewNSTextFieldCell 子类化以实现我想要的外观,但是我正在努力摆脱标题的默认样式。我似乎可以调整它的框架,但我不确定其余默认样式的来源。

正如您在屏幕截图中看到的,红色区域是 headerView 的增加的框架。我正在使用它的 CALayer 来设置颜色,但是我不知道如何更改里面的内容...

enter image description here

这是我在 ViewController 的 viewDidLoad 中所做的

override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
tableView.wantsLayer = true
tableView.headerView?.frame = NSMakeRect(0, 0, (tableView.headerView?.frame.width)!, 32.00)
tableView.headerView?.wantsLayer = true
tableView.headerView?.layer?.backgroundColor = NSColor.red.cgColor
}

我也尝试过子类化 NSTableHeaderView,但是这个类在我可以进行的自定义方面似乎非常有限......

如有任何帮助,我们将不胜感激?

最佳答案

TableView 是基于 View 的,但标题不是,标题单元格仍然是 NSTableHeaderCell 类。使用 NSTableColumn 的属性 headerCell。您可以设置单元格的属性,例如 attributedStringValuebackgroundColor,或者用 NSTableHeaderCell 的子类实例替换单元格,并覆盖其中一种绘制方法。

关于swift - 如何将自定义样式应用于 NSTableHeaderView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39898446/

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