获取NSTableView中内容的高度

edc*_*591 6 macos cocoa objective-c nstableview nsscrollview

有没有一种方法可以获取内容的高度NSTableView。在iOS中,您可以使用的-contentSize方法UIScrollView。但是,的-contentSize方法NSScrollView似乎只返回的可见部分的高度NSScrollView,而不包括屏幕外的内容。

那么,如何在Mac上完成呢?

Ver*_*ous 5

- (NSSize)contentSizeinAppkit返回 的大小NSClipView,而不是在表视图内滚动的内容的高度。我不知道UIScrollViews 是如何工作的,但是在 OS X 上, anNSScrollView有一个“内容视图”(更恰当地命名为NSClipView),可以剪辑实际内容,该内容由文档视图提供(如果其尺寸大于该视图,则可以滚动)剪辑视图的子视图),它是剪辑视图的子视图。

作为旁注,NSScrollView通过设置文档视图的边界原点来滚动(据我所知)。

看起来你想要的是文档视图的高度,实际内容的高度。为此,请尝试类似的事情

scrollView.documentView.frame.size.height 
Run Code Online (Sandbox Code Playgroud)