You can add a delay that will be slightly larger at each iteration of your loop, for example:
double delay = 0.0;
for (MKAnnotationView *view in views) {
CGRect endFrame = view.frame;
CGRect startFrame = endFrame;
startFrame.origin.y = visibleRect.origin.y - startFrame.size.height;
view.frame = startFrame;
[UIView beginAnimations:@"drop" context:NULL];
[UIView setAnimationDuration:1.0];
[UIView setAnimationDelay:delay];
view.frame = endFrame;
[UIView commitAnimations];
delay += 0.1;
}
source
share