我有一个里面有NSTableView的NSScrollView。

如您所见,有一个100px高的NSView覆盖在表视图上。(这是故意这样做的,覆盖层是略微透明的,您可以看到下面滚动的表视图的阴影)。
当然,问题是我需要在滚动视图的底部添加100px的空白空间来补偿覆盖。否则你看不到桌子的底部,它被覆盖了。
我试过修改剪辑视图,但似乎只能改变它的边框(失去了透明的叠加效果)。
也许我做得不太对,请帮帮忙!
发布于 2013-01-27 05:28:08
好了,我想出来了,我需要不断地放大documentView框架。
我找到的最好的方法是对文档视图进行子类化,在本例中是NSTableView。
在子类化的NSTableView中,我覆盖了setFrameSize:(NSSize)newSize
- (void)setFrameSize:(NSSize)newSize {
newSize.height += 100;
[super setFrameSize:newSize];
}这向表视图的底部增加了100px的填充,从而增加了滚动视图。
发布于 2017-11-10 02:11:00
在Swift 4中也是如此
class TableViewPadded: NSTableView{
//Add padding at bottom
override func setFrameSize(_ newSize: NSSize) {
let padded = NSSize(width: newSize.width, height: newSize.height+30)
super.setFrameSize(padded)
}
}https://stackoverflow.com/questions/14533297
复制相似问题