Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 文档视图检测封闭NSScrollView调整大小_Swift_Macos_Cocoa_Nsscrollview - Fatal编程技术网

Swift 文档视图检测封闭NSScrollView调整大小

Swift 文档视图检测封闭NSScrollView调整大小,swift,macos,cocoa,nsscrollview,Swift,Macos,Cocoa,Nsscrollview,我有一个自定义视图作为NSScrollView的文档视图 文档视图需要知道滚动视图的宽度,以确定其自身的高度并调整图形(根据宽度包装内容) 文档视图如何监视封闭滚动视图的宽度变化?因此,您不必“监视”大小变化,只需在文档视图上设置适当的autoresizingMask即可。即documentView.autoresizingMask=nsviewwidthsizeable。然后,每次大小更改时都会调用drawRect方法,以便重新绘制。@rocky我的视图没有drawRect方法,我使用的是层。

我有一个自定义视图作为
NSScrollView
的文档视图

文档视图需要知道滚动视图的宽度,以确定其自身的高度并调整图形(根据宽度包装内容)


文档视图如何监视封闭滚动视图的宽度变化?

因此,您不必“监视”大小变化,只需在文档视图上设置适当的autoresizingMask即可。即documentView.autoresizingMask=nsviewwidthsizeable。然后,每次大小更改时都会调用drawRect方法,以便重新绘制。@rocky我的视图没有drawRect方法,我使用的是层。当宽度改变时,需要移动层。好的,你现在如何移动/绘制层?@rocky我使用的是
布局
方法,但调用它似乎不一致(有时会在半秒延迟后工作,其他时间根本不会被调用)。为了进行调试,我还连接了一个NSButton,以便在调整窗口大小后手动重新显示。是否观察
NSViewFrameDidChangeNotification
通知?