Шкала UIImageView от центра с использованием анимационных блоков
Я использую следующее, чтобы масштабировать изображение вверх, но его масштабирование от него оставило верхнюю точку, как я могу сделать масштаб из центра.
[UIView animateWithDuration:duration delay:delay options:options
animations:^{
myImageView.frame = frame;
myImageView.alpha = alpha;
}
completion:^(BOOL finished) {
}
];
Ответы
Ответ 1
[UIView animateWithDuration:0.5
delay:0
options:UIViewAnimationOptionBeginFromCurrentState
animations:(void (^)(void)) ^{
myImageView.transform=CGAffineTransformMakeScale(1.2, 1.2);
}
completion:^(BOOL finished){
myImageView.transform=CGAffineTransformIdentity;
}];
это будет отлично работать
Удачи
Ответ 2
это может быть блок анимации для масштабирования изображения
здесь, поскольку theView U может использовать uiimageview
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:GROW_ANIMATION_DURATION_SECONDS];
theView.transform = CGAffineTransformMakeScale(1.2, 1.2);
[UIView commitAnimations];
Ответ 3
Попробуйте следующее:
[UIView animateWithDuration:2
animations:^{
float zoomScal = 5; //want 5x zoom
CGPoint CenterPoint = CGPointMake(200, 300); // want center point to this
imgArtifactImage.frame = CGRectMake(- CenterPoint.x * (zoomScal-1),- CenterPoint.y * (zoomScal-1),self.view.frame.size.width * zoomScal,self.view.frame.size.height * zoomScal);
} completion:^(BOOL finished){}];
Это работает для меня.