【发布时间】:2015-06-08 12:30:05
【问题描述】:
我正在尝试使用 QML Canvas.requestAnimationFrame 来绘制一些自定义动画。我希望每帧调用一次提供的回调,大约每秒 60 次。我的代码是:
Canvas {
id: canvas
width: 600
height: 600
function draw() {
}
Component.onCompleted: {
var i = 1;
function drawFrame() {
requestAnimationFrame(drawFrame)
console.log("Frame callback: " + i++)
draw()
}
drawFrame()
}
onPaint: {
draw()
}
}
我看到的是回调被更频繁地调用。计数器在几秒钟内达到 70000,之后应用程序完全没有响应。
我做错了什么?
【问题讨论】:
-
我认为你必须避免代码中的递归。