我已阅读并应用approach/method provided by Apple来同步两个NSScrollView
个实例。我的问题更简单,因为我只需要在一个方向上进行同步(而不是双向)。
总结该方法:“source”scrollView post bounds更改通知,这些通知由调用侦听scrollview的clipview的scrollToPoint
方法的处理程序观察到。
虽然第二个scrollView确实与第一个(最终)同步,但两者之间存在明显的滞后。这对我来说更糟糕,因为收听NSScrollView
包含需要与正文内容对齐的标题。
我通过以30 fps记录我的滚动动作并播放它来确认延迟。检查该粒度级别,很清楚源scrollView在侦听scrollView之前开始移动。
如何让这两个scrollViews 真正保持彼此同步 - 这可能还是我期待的很多?
答案 0 :(得分:0)
我使用addFloatingSubview:
NSScrollView
API间接解决了这个问题。然而,这会产生其他问题,即scrollRectToVisible
预计会被视为无遮挡NSClipView
。这个问题在这个问题中有更详细的记录:
https://stackoverflow.com/questions/29153071/how-can-i-layout-my-clipview-relative-to-my-scrollview