我正在嘗試添加一些視圖以查看 NSScrollView 是否會垂直滾動但它沒有做任何事情。
private func configure2() {
var yOffset = 0
let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 900))
scrollView.hasVerticalScroller = true
for _ in 1...20 {
let v = NSView(frame: NSRect(x: 0, y: 0 yOffset, width: 50, height: 20))
v.wantsLayer = true
v.layer?.backgroundColor = NSColor.red.cgColor
scrollView.addSubview(v)
yOffset = 40
}
scrollView.backgroundColor = NSColor.green
self.addSubview(scrollView)
}

我記得在 UIKit 中我可以設定 UIScrollView 的 contentSize 屬性,但在 macOS 中我不能設定 contentSize。
uj5u.com熱心網友回復:
您需要設定要么documentView或contentView你的NSScrollView。然后,您將子視圖添加到該視圖中。
private func configure2() {
var yOffset = 0
let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 900))
let documentView = NSView(frame: .zero)
scrollView.hasVerticalScroller = true
for _ in 1...20 {
let v = NSView(frame: NSRect(x: 0, y: 0 yOffset, width: 50, height: 20))
v.wantsLayer = true
v.layer?.backgroundColor = NSColor.red.cgColor
documentView.addSubview(v)
yOffset = 40
}
print(yOffset)
documentView.frame = .init(x: 0, y: 0, width: 400, height: yOffset)
scrollView.documentView = documentView
scrollView.backgroundColor = NSColor.green
self.addSubview(scrollView)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/383267.html
下一篇:谷歌地圖內容安全政策錯誤
