我使用此代码移动我的视图
[UIView animateWithDuration:0.3 animations:^{
[MyView setTransform:CGAffineTransformMakeTranslation(260, 0)];
} completion:^(BOOL finished) {
}];
MyView是self.view的子视图
我想用260
将它移到右边但它首先会向左移动130而没有动画
然后使用260和animate
向右移动我不知道为什么MyView首先向左移动?
答案 0 :(得分:0)
我想问题是MakeTranslation函数让你的视图在动画到新变换之前重置它的位置。
试试这个:
[UIView animateWithDuration:0.3 animations:^{
[MyView setTransform:CGAffineTransformTranslate(myView.transform, 260, 0)];
} completion:^(BOOL finished) {
}];
答案 1 :(得分:0)
问题是您正在使用自动布局。对于简单的动画,尝试关闭故事板中的自动布局。
您的动画应该按预期工作。