Macos NSTableViewHeaderView未在NSScroller上绘制

Macos NSTableViewHeaderView未在NSScroller上绘制,macos,nsscroller,nstableheaderview,Macos,Nsscroller,Nstableheaderview,我有一个自定义NSTableHeaderCell对象的自定义NSTableHeaderView,这些对象绘制了一个自定义标题。我遇到的问题是,当NSScroller条显示时,在滚动条上方绘制的标题是默认的,而不是我的自定义绘图 显示控制此部分的视图(在滚动条上,标题右侧)称为cornerView,NSTableView有一个-setCornerView:(NSView*)视图方法来设置它。我通过将NSView子类化并使用自定义绘图将一个角图像绘制到视图中,然后使用前面提到的方法设置该子类,解决了

我有一个自定义NSTableHeaderCell对象的自定义NSTableHeaderView,这些对象绘制了一个自定义标题。我遇到的问题是,当NSScroller条显示时,在滚动条上方绘制的标题是默认的,而不是我的自定义绘图


显示控制此部分的视图(在滚动条上,标题右侧)称为cornerView,NSTableView有一个-setCornerView:(NSView*)视图方法来设置它。我通过将NSView子类化并使用自定义绘图将一个角图像绘制到视图中,然后使用前面提到的方法设置该子类,解决了我的问题。

Mac Mojave Left corner view

最近,在Mac Mojave上为我的一个应用程序提供支持时,我发现了表视图左上角视图背后的罪魁祸首。如果我们将从xib设置角视图(如下所示),也可以删除此选项

如果“自动隐藏滚动条”属性设置为“是”,并且未设置角视图,则会产生此问题。

解决方案:


这是我在可可上试图解决的最神秘的问题之一。谢谢