我正在使用动画更改视图的大小,我需要在动画的每个步骤中更改该视图中的imageview图像。图像取决于视图大小,这就是我想要这样做的原因。我试图在animations:
块中执行此操作,但它似乎只调用一次,而不是像我预期的那样每次迭代。
如何在UIView animateWithDuration:animations:
的每次迭代期间执行某些操作。或许我的问题还有其他解决办法吗?
P.S。我曾尝试使用completion:
块,但它并没有正确解决我的问题,因为我希望实现图像的平滑更改。
答案 0 :(得分:0)
如果我给你简单的答案,答案是否定的......
但我有一个替代方案,这个函数可以递归调用,如..
-(void)animationRecursive
{
[UIView animateWithDuration:0.001 animations:^{
// Here set frame slide different from last frame use incremental variables
// for x,y,width,height
//yourImageView.frame = set frame
//yourImageView.image = set image
} completion:^(BOOL finished) {
if(![yourImage.frame isEqualToString NSStringFromCGRect(yourFinalCGRectAfterAnimation)]
{
[self animationRecursive];
}
}];
}
希望这会对你有帮助.............