我正在使用animator()
在我的应用的框架(子视图)之间滚动NSScrollView
。当动画发生并且我调整NSWindow
的大小时,整个NSView
会像这样被扭曲:
以下是负责过渡的代码:
func goToFrame(frameNumber: Int) {
dispatch_async(dispatch_get_main_queue(), {
var clipView: NSClipView = self.container.contentView
newOrigin: NSPoint = clipView.bounds.origin
newOrigin.x = CGFloat(self.viewWidth * frameNumber)
NSAnimationContext.beginGrouping()
NSAnimationContext.currentContext().duration = 0.4
self.container.contentView.animator().bounds.origin = newOrigin
self.container.reflectScrolledClipView(self.container.contentView)
NSAnimationContext.endGrouping()
})
}
知道为什么会这样做吗?我没有在日志中收到任何警告。
答案 0 :(得分:0)
Ken Thomases在评论中回答:
这一行:
self.container.contentView.animator().bounds.origin = newOrigin
应更改为:
self.container.contentView.animator().setBoundsOrigin(newOrigin)