I have multiple animations that have to run as a chain. The way I've been dealing with this is to use a completionHandler and run the next animation block. Is there a cleaner way to deal with this?
[UIView animateWithDuration:1 animations^{
// perform first animation
}completion:(BOOL finished){
[UIView animateWithDuration:1 animations^{
// perform second animation
}completion:(BOOL finished){
}];
}];