2011-06-05 186 views
0

我做了这件事。除了向我自己演示之外,它没有任何其他用途。实质上,我正在移动一个视图,在循环中围绕屏幕创建。问题在于它不会一直等到它完成一个动画才能启动另一个动画,因此视图会绕过前两个并在for循环完成后最后一个toastRect结束,并且它不会在那。在继续下一步之前,如何强制代码完成每个动画?如何停止执行FOR循环,直到代码完成

int i; 
    for (i=0; i < 100; i++) { 

     [UIView beginAnimations:nil context:NULL]; 
     [UIView setAnimationDuration:9]; 
     toast.view.frame = toastRect1; 
     [UIView commitAnimations]; 

     [UIView beginAnimations:nil context:NULL]; 
     [UIView setAnimationDuration:9]; 
     toast.view.frame = toastRect2; 
     [UIView commitAnimations]; 

     [UIView beginAnimations:nil context:NULL]; 
     [UIView setAnimationDuration:9]; 
     toast.view.frame = toastRect; 
     [UIView commitAnimations]; 
     NSLog(@"%d",i); 

    } 

} 

回答