2017-06-12 65 views
1

有没有一种方法让自定义NSView知道它是否嵌入在NSScrollView中?在NSSscrollView中嵌入的自定义NSView

我正在创建一个自定义NSView来显示一些内容。
当我的视图被放置在一个窗口或另一个视图中时,它的大小是固定的,并且内容被剪裁成可用大小。
当我的视图放置在NSScrollView中时,其大小必须根据内容进行调整,以便在必要时滚动它。
我知道我可以在我的视图中添加一个成员,它指定承载我的视图的NSScrollView,并在代码中手动设置此成员,但我想知道是否有另一种方式?

回答

2

您没有检查NSView的方法吗?

@property(readonly, strong) NSScrollView *enclosingScrollView;

var enclosingScrollView: NSScrollView? { get }

包含当前视图中的最近的祖先滚动视图。

如果当前视图未嵌入到滚动视图中,则此属性的值为零。如果当前视图本身是滚动视图,则此属性不包含当前视图。它始终包含一个祖先滚动视图。

+0

说实话,我并不认为这样的财产存在。 – Surubelnita