在我创建的应用中,我将“ Scroll View
”拖放到主故事板上。这会自动创建一个NSScrollView
,其中一个为NSClipView
,其中一个为NSView
。美好的。
我想要实现的是将复选框动态添加到该滚动视图。我不知道会有多少个复选框(这就是为什么我需要滚动)。
向NSScrollView
或NSClipView
实际添加一个subView会显示一些复选框,但未启用滚动。将subView添加到NSView
渲染没有任何效果。
编辑:我也尝试修改NSScrollView
,NSClipView
和NSView
的高度,没有运气。
当视图中添加了太多复选框时,如何启用滚动功能?
因此,诀窍是创建一个容器视图(即NSView
)来保存按钮。当你创建一个NSScrollView
故事板,它创建NSClipView
和NSView
为您服务。在上添加或删除按钮后NSView
(可以创建自己的按钮,也可以使用提供documentView
的按钮),将滚动条的设置为包含按钮的视图。这样可以正确重置滚动条中的所有内容,并且您应该正在滚动!如果更改表示滚动内容的视图的大小,则只需将该视图重新分配给scroller.documentView
它,它将相应地更新所有内容。
这是一个向滚动条添加20个按钮的可怕示例:
let documentView = NSView(frame: CGRectMake(0,0,200,1200))
for index in 0..<20 {
let offset = CGFloat(index * 50)
let button = NSButton(frame: CGRectMake(0, offset, 150, 50 ))
documentView.addSubview(button)
}
scrollView.documentView = documentView
在苹果的文档在这给更多的细节,你可能要设置更多选项。
希望这可以帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句