NSScrollView填充

Ale*_*ant 5 macos cocoa objective-c

我有一个内置NSTableView的NSScrollView.

在此输入图像描述

如您所见,有一个100px高的NSView覆盖表视图.(这是故意完成的,叠加层略微透明,你可以在下面看到桌面视图滚动的阴影).

问题当然是我需要在滚动视图的底部添加100px的空白区域以补偿叠加.否则你无法看到表格的底部,它会被叠加层覆盖.

我已经尝试修改剪辑视图,但似乎只能更改其框架(失去透明叠加效果).

也许我做得不对,请帮忙!

Ale*_*ant 7

好的,所以我想出来了,我需要不断扩大documentView框架.

我发现这样做的最好方法是子类化文档视图,在本例中是NSTableView.

在子类NSTableView中我覆盖了 setFrameSize:(NSSize)newSize

- (void)setFrameSize:(NSSize)newSize {
    newSize.height += 100;
    [super setFrameSize:newSize];
}
Run Code Online (Sandbox Code Playgroud)

其中将100px的填充添加到表视图的底部,从而添加滚动视图.