我想画一个点,1秒左右后我想画出下一点。这有点可能:
我已经尝试过:
NSArray *optionArray = [responseArray valueForKey:@"name"];
不幸的是,这不起作用。它只是立即绘制了整条线。
答案 0 :(得分:5)
这不起作用,因为for循环将立即运行到最后,setTimeouts将同时调度,所有函数将同时触发。
而不是那样做,这样做:
var i = 1;
(function loop(){
if(i++ > 200) return;
setTimeout(function(){
drawPoint(vis,i,i);
loop()
}, 1000)
})();
<强>解释强>
此IIFE将首次与i = 1
一起运行。然后,if
增加i
(执行i++
)并检查它是否大于200.如果是,则函数loop
返回。如果不是,则会安排setTimeout
,再次调用drawnPoint
和函数loop
。