【发布时间】:2021-05-07 10:43:06
【问题描述】:
我正在使用 NSTableView 并将 usesAlternatingRowBackgroundColors 设置为 true。
只要我
- 添加许多列,例如,15 和
- 将单元格间距高度设置为 > 0
表格显示了一个视觉故障,其中交替的行在高度上分布不均:
这仅在 macOS Big Sur 下发生。 macOS Mojave 和 macOS Catalina 运行良好。我使用最新的 Xcode 12.4 尝试了几乎任何设置和样式的组合。
我的ViewController 相当简单:
class ViewController: NSViewController {
@IBOutlet weak var tableView: NSTableView!
override func viewDidLoad() {
super.viewDidLoad()
for columnIndex in 0..<15 {
let tableColumn = NSTableColumn(identifier: NSUserInterfaceItemIdentifier(rawValue: "\(columnIndex)"))
tableColumn.title = "CustomColumn \(columnIndex)"
tableColumn.width = 150
tableView.addTableColumn(tableColumn)
}
}
}
而且Interface Builder中NSTableView的配置也比较枯燥,除了调整单元格间距高度:
如果有人可以确认问题并可能分享任何解决方法,那就太好了。
你可以在https://github.com/fheidenreich/table-test找到一个演示项目
【问题讨论】:
-
我没有答案,但我可以确认你不是唯一看到这个的人。在一个有 26 列的应用程序中,我也发现了这些故障。我自己画了cliprect背景。
标签: swift nstableview appkit macos-big-sur