Is there a way to get the height of the content in an NSTableView
. In iOS, you can use the -contentSize
method of UIScrollView
. However, the -contentSize
method of NSScrollView
seems to just return the height of only the visible section of the NSScrollView
, not including whatever is offscreen.
So, how can this be done on a Mac?
- (NSSize)contentSize
in Appkit
returns the size of the NSClipView
, and not the height of the content that scrolls inside the table view. I don't know how UIScrollView
s work, but on OS X, an NSScrollView
has a "content view" (more aptly named the NSClipView
) that clips the actual content, which is provided by a document view (scrollable if it has a size larger than that of the clip view) that is a subview of the clip view.
As a side note, the NSScrollView
scrolls by setting the document view's bounds origin (to the best of my knowledge).
It looks like what you want is the height of the document view, the height of the actual content. For that, try something like
scrollView.documentView.frame.size.height
You can get the real content height of NSTableView by
Objective-C version:
tableView.intrinsicContentSize.height
Swift version: tableView.intrinsicContentSize.height
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With