[UIView beginAnimations:@"rotateButton" context:nil];
[UIView setAnimationDuration:.5];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(myAnimDidStop:finished:context:)];
btn.transform = CGAffineTransformMakeRotation((0.0174532925)*90);
[UIView commitAnimations];
selectedRow = btn.tag;
Метод делегата будет выглядеть следующим образом:
- (void)myAnimDidStop:(NSString *)animID finished:(BOOL)finished context:(void*)ctx {
if ([@"rotateButton" isEqualToString:animID]) {
[self.tableView reloadData];
}
}
Обратите внимание, что если вы ориентируетесь на iOS 4 и новее, вы можете использовать блоки анимации:
[UIView animateWithDuration:0.5
animations:^{
btn.transform = CGAffineTransformMakeRotation((0.0174532925)*90);
selectedRow = btn.tag;
}
completion:^(BOOL finished) {
[self.tableView reloadData];
}];