调整 NSScrollView 的大小
Resizing NSScrollView
如何使用 Swift 调整 NSScrollView 的大小?
class MainViewController: NSViewController {
@IBOutlet weak var scrollView: NSScrollView!
override func viewDidLoad {
scrollView.setFrameOrigin(NSPoint(x: 340, y: 537))
scrollView.setFrameSize(CGSize(width: scrollView.contentSize.width, height: 102.0))
}
}
以上代码只有在没有设置约束的情况下才有效。但是,在没有约束的情况下,当 window 调整大小时,ScrollView 不会留在原地。
如果您尝试设置 NSScrollView
的 document 大小(可滚动区域),那么我们需要做的就是设置文档视图的大小。
Note: This assumes there are no constraints on the document view.
scrollView.documentView?.setFrameSize(NSSize(width: 576, height: 56))
如果您想滚动到特定区域,请参阅 scrollToVisible(_:)
。
所以这对我有用,因为我的 ScrollView 位于左上角:
scrollView.setFrameOrigin(NSPoint(x: self.view.frame.minX + 340, y: self.view.frame.maxY - 172))
scrollView.setFrameSize(CGSize(width: scrollView.contentSize.width, height: 102.0))
下图显示了大小检查器中用于启用自动调整大小并保持在window左上角的设置。
如何使用 Swift 调整 NSScrollView 的大小?
class MainViewController: NSViewController {
@IBOutlet weak var scrollView: NSScrollView!
override func viewDidLoad {
scrollView.setFrameOrigin(NSPoint(x: 340, y: 537))
scrollView.setFrameSize(CGSize(width: scrollView.contentSize.width, height: 102.0))
}
}
以上代码只有在没有设置约束的情况下才有效。但是,在没有约束的情况下,当 window 调整大小时,ScrollView 不会留在原地。
如果您尝试设置 NSScrollView
的 document 大小(可滚动区域),那么我们需要做的就是设置文档视图的大小。
Note: This assumes there are no constraints on the document view.
scrollView.documentView?.setFrameSize(NSSize(width: 576, height: 56))
如果您想滚动到特定区域,请参阅 scrollToVisible(_:)
。
所以这对我有用,因为我的 ScrollView 位于左上角:
scrollView.setFrameOrigin(NSPoint(x: self.view.frame.minX + 340, y: self.view.frame.maxY - 172))
scrollView.setFrameSize(CGSize(width: scrollView.contentSize.width, height: 102.0))
下图显示了大小检查器中用于启用自动调整大小并保持在window左上角的设置。