我正在尝试使用 Swift 增加 NSWindow 的大小。 (苹果电脑)
现在,我可以在没有动画的情况下很好地做到这一点,但我不确定如何使用动画来做到这一点。
一个。我会对代码感兴趣。
B.如果有教程或书籍,请放一个链接。
最佳答案
以下代码将窗口的高度增加 50 像素,并将 y 原点减少相同的量。这会将窗口放大到屏幕底部。
var windowFrame = self.view.window?.frame
let oldX = windowFrame?.origin.x
let oldY = windowFrame?.origin.y
let oldWidth = windowFrame?.size.width
let oldHeight = windowFrame?.size.height
let toAdd = CGFloat(50.0)
let newY = oldY! - toAdd
let newHeight = oldHeight! + toAdd
windowFrame? = NSMakeRect(oldX!, newY, oldWidth!, newHeight)
self.view.window?.animator().setFrame(windowFrame!, display: true, animate: true)
您必须调用窗口的动画师才能获得动画(潜在错误?)。这不会产生动画:
self.view.window?.animator().setFrame(windowFrame!, display: true, animate: true)
关于swift - 核心动画,Swift : how to animate NSWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34159676/