自定义NSView是否有办法知道它是否嵌入在NSScrollView中?
我正在创建一个自定义NSView来显示一些内容。
当我的视图放置在窗口或其他视图中时,其大小是固定的,内容将被裁剪为可用大小。
当我的视图放置在NSScrollView中时,必须根据内容调整其大小,以便可以在需要时进行滚动。
我知道我可以在视图中添加一个成员,该成员指定承载我的视图的NSScrollView并在代码中手动设置此成员,但是我想知道是否还有另一种方法?
最佳答案
您没有检查NSView
的方法吗?@property(readonly, strong) NSScrollView *enclosingScrollView;
要么var enclosingScrollView: NSScrollView? { get }
包含当前视图的最接近的祖先滚动视图。
如果当前视图未嵌入在滚动视图内,则此属性的值为nil。如果当前视图本身是滚动视图,则此属性不包含当前视图。它始终包含一个祖先滚动视图。
关于cocoa - 嵌入在NSSscrollView中的自定义NSView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44495260/