ImageView 动画重复
Posted
技术标签:
【中文标题】ImageView 动画重复【英文标题】:ImageView Animation Repeatition 【发布时间】:2013-01-30 05:43:38 【问题描述】:我正在开发一个需要带有 imageView 动画的应用程序。 在开始图像的位置是在 CGPoint(735,112),点击动画按钮时,它必须移动到屏幕的左侧,即指向 CGPoint(20,112),并且必须从左到右重复动画,即指向 CGPoint( 735,112),必须在此之后停止。我正在使用以下代码。
CGRect newRect=cleanStrip.frame;
[UIView beginAnimations:@"animation1" context:nil];
[UIView setAnimationDuration:3.0];
[UIView setAnimationDelegate:self];
[UIView setAnimationRepeatAutoreverses:YES];
newRect.origin.x=20;
cleanStrip.frame=newRect;
[UIView commitAnimations];
重复动画后,图像视图必须停止在原始位置 CGPoint(735,112)。但上面的代码将图像停止在 CGPoint(20,112)。
如何在动画后将图像停止在其原始位置。 谢谢,
【问题讨论】:
你的动画代码是什么? 【参考方案1】:你可以使用块来开始你的动画
__block CGRect newRect=cleanStrip.frame;
__block int originx = newRect.origin.x;
[UIView animateWithDuration:2.0
animations:^
newRect.origin.x=20;
cleanStrip.frame=newRect;
completion:^(BOOL finished)
[UIView animateWithDuration:2.0
animations:^
newRect.origin.x=originx ;
cleanStrip.frame=newRect;
];
];
【讨论】:
它必须将动画重复到原始位置并停止。 newRect.origin.x=20;行显示错误“只读变量不可分配” 目前我没有mac os x,无法测试,你可以试试新编辑的 我还有其他关于动画的问题,可以问一下吗?以上是关于ImageView 动画重复的主要内容,如果未能解决你的问题,请参考以下文章