NSButton的起源没有更新

时间:2018-04-23 10:15:41

标签: swift macos animation nsbutton

我在屏幕上有几个按钮,他们需要移动动画。 我更新了循环中按钮的来源,但我的框架仅在for循环结束时更新。仅显示从第一个点到最后一个点的移动,忽略所有迭代帧。 这是我的代码:

    var origin = btn.frame.origin
    let diff = pos - btn.currPosition

    print("initial pos : \(origin)\n")
    print("diff : \(diff)\n")

    for move in 1...diff {
       // some calculations for movement, then
        btn.animator().setFrameOrigin(origin)
        btn.currPosition = position

    }

任何人都可以告诉视图重绘时间吗?我已经使用setNeedsDisplay()和display()调用来重绘,但它只在循环完成后才起作用。

0 个答案:

没有答案