我可能会迷失在一杯水中,因为我不是经验丰富的开发人员,但我似乎无法实现简单的覆盖来修改 NSTabView 项目的大小。
- 我有一个选项卡视图控制器(样式 = 工具栏)
- 我有一个 Tabless 选项卡视图
- 我有 3 个标签项。为了测试,我只将其中一个子类归类为下面的子类
我创建了一个新的 NSTabViewItem 子类:MyTabViewItem 并将 3 个选项卡项中的一个子类化。代码是:
import Cocoa
class MyTabViewItem: NSTabViewItem {
override func drawLabel(_ shouldTruncateLabel: Bool, in labelRect: NSRect) {
var size = self.sizeOfLabel(false)
size.width = 180
print("Draw!!")
}
override func sizeOfLabel(_ computeMin: Bool) -> NSSize {
var size = super.sizeOfLabel(false)
size.width = 180
print("Draw!!")
return size
}
}
一切正常,除了子类化。选项卡出现,它们确实通过切换视图来操作,程序按应有的方式运行。除了它不会调整选项卡项的大小。永远不会到达子类 MyTabViewItem 中的代码(它永远不会打印 Draw!! 应该如此。
我无法理解我在这里缺少什么。我还没有读过要建立的任何 IB 连接(而且我似乎无论如何都无法连接选项卡项)。如果这是一个微不足道的问题,请道歉,但我到处搜索并没有找到任何可以帮助我的东西。
谢谢