Ios 设置UIImageView失去中心的动画
我在iOS中遇到了我无法解决的问题 我有一个UIImageView的动画,效果非常好。 另外,我有一个设置中心,可以将UIImageView放在屏幕上的正确位置,这也非常好用 问题是,当我尝试设置UIImageView的中心,然后启动动画时,动画工作,但中心不变 动画代码:Ios 设置UIImageView失去中心的动画,ios,uiimageview,uiviewanimation,Ios,Uiimageview,Uiviewanimation,我在iOS中遇到了我无法解决的问题 我有一个UIImageView的动画,效果非常好。 另外,我有一个设置中心,可以将UIImageView放在屏幕上的正确位置,这也非常好用 问题是,当我尝试设置UIImageView的中心,然后启动动画时,动画工作,但中心不变 动画代码: -(void)startMirror{ [UIView animateWithDuration:1.0 delay:0.0 options
-(void)startMirror{
[UIView animateWithDuration:1.0
delay:0.0
options:UIViewAnimationOptionRepeat|UIViewAnimationOptionAutoreverse
animations:^{
self.transform = CGAffineTransformMakeScale(-1, 1);
}
completion:^(BOOL completed){}];
}
主要代码:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[self.face1 setCenter:CGPointMake(200, 300)];
[self.face1 startMirror];
}
我用我的问题做了一个小项目,你可以从这里下载we.tl/0gPqkVDCKK
尝试注释并取消注释第46行,您将看到我的问题所在。我认为在startMirror中进行转换后,您需要转换中心点。我找到了解决方案,替换为:
[self.face1 setCenter:CGPointMake(200, 300)];
与:
在动画中
self.transform = CGAffineTransformScale(self.transform, -1, 1);
到底是什么不起作用?我很难理解这个问题。当我执行“主代码”时,动画开始,但UIImageView中心不是200300。请告诉我你现在是否理解这个问题。谢谢。是否有任何与视图位置相关的代码没有显示?因为我看不出这有什么不起作用的原因。在开始动画之前,视图的位置会改变几次。始终使用设置中心。我不确定这是否已满,但我使用:[self.layer removeAllAnimations]停止动画;[自置变换:CGAffineTransformity];主代码在触摸开始时运行,我只是更新了问题。
self.transform = CGAffineTransformScale(self.transform, -1, 1);