【发布时间】:2014-10-26 20:14:50
【问题描述】:
我首先尝试通过设置禁用滚动条:
scrollView!.hasHorizontalScroller = false
这很成功,但我仍然可以使用触控板从左向右滚动。 有没有办法确保完全禁用 NSScrollView 对象的水平滚动?
【问题讨论】:
标签: cocoa swift nsscrollview
我首先尝试通过设置禁用滚动条:
scrollView!.hasHorizontalScroller = false
这很成功,但我仍然可以使用触控板从左向右滚动。 有没有办法确保完全禁用 NSScrollView 对象的水平滚动?
【问题讨论】:
标签: cocoa swift nsscrollview
即使内容大小正确,我仍然可以使用两指手势水平滚动一点,然后再卡回原位。要解决此问题,您可以设置弹性:
scrollView.horizontalScrollElasticity = .None
【讨论】:
除了@mikepj 的回答之外,我还需要执行以下操作。 将this修改为:
override func scrollWheel(with event: NSEvent) {
super.scrollWheel(with: event)
if event.deltaX != 0 {
super.nextResponder?.scrollWheel(with: event)
}
}
这可能是因为我使用的是 NSRulerView。
【讨论】:
var scrollView = UIScrollView(frame:myFrame)
let scroll = CGSizeMake(myHeight, myFrame.size.width)
scrollView.contentSize = scroll
固定框架宽度以防止水平滚动。
【讨论】: