有没有办法在NSTableView
中获取内容的高度。在iOS中,您可以使用-contentSize
UIScrollView
方法。但是,-contentSize
的{{1}}方法似乎只返回NSScrollView
的可见部分的高度,不包括屏幕外的任何部分。
那么,怎么能在Mac上完成呢?
答案 0 :(得分:3)
- (NSSize)contentSize
中的 Appkit
返回NSClipView
的大小,而不是在表格视图中滚动的内容的高度。我不知道UIScrollView
是如何工作的,但是在OS X上,NSScrollView
有一个“内容视图”(更恰当地命名为NSClipView
)来剪切实际内容,这是由文档视图提供(如果其大小大于剪辑视图的大小,则可滚动),这是剪辑视图的子视图。
作为附注,NSScrollView
通过设置文档视图的边界原点(据我所知)来滚动。
看起来你想要的是文档视图的高度,实际内容的高度。为此,尝试类似
的内容scrollView.documentView.frame.size.height
答案 1 :(得分:1)
您可以通过以下方式获取NSTableView的实际内容高度
Objective-C版本:
tableView.intrinsicContentSize.height
快速版本:tableView.intrinsicContentSize.height