Я знаю, что множество людей задавали один и тот же вопрос, но ни одно из предложенных решений не кажется уместным, поэтому я спрашиваю еще раз: У меня есть следующий блок кода:
UIImageView *moneyHolder = [[UIImageView alloc] initWithImage:moneyImage];
if([paymentMethod.viewed intValue] == 0){
//CGRect targetFrame = CGRectMake(0, cell.frame.size.height/2-3, cell.frame.size.width, targetHeight);
CGRect targetFrame = moneyHolder.frame;
targetFrame.origin.y = cell.frame.size.height/2-3;
NSLog(@"animating");
[UIView animateWithDuration:2
delay:0
options: UIViewAnimationCurveEaseOut
animations:^{
moneyHolder.frame = targetFrame;
}
completion:^(BOOL finished){
NSLog(@"done");
}
];
}
Который, я ДУМАЮ, должен анимировать мой фрейм moneyHolder. К сожалению, это происходит сразу, а не в течение 2 секунд. Я могу проверить это по отметкам времени из моего журнала:
2012-05-11 03:41:50.102 AgilePoet[5824:15203] анимация
2012-05-11 03:41:50.116 AgilePoet[5824:15203] сделано
Кто-нибудь что-нибудь думает о том, почему это может происходить? Все остальные вопросы по этому вопросу были сосредоточены на том, что свойство не может быть анимировано, но я знаю, что кадр изображения может быть анимирован. Единственное, что я могу предположить, это то, что этот код написан внутри моего
-tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath method.
Заранее спасибо!