我有一个带有按钮的视图,当按钮通过简单的翻译进行点击时会向上移动。但是,当使用CGAffineTransformTranslate时,UIButton似乎也向下移动了几个点。我该如何解决这个动画?
- (IBAction)moveButton:(id)sender {
UIButton *button = (UIButton *)sender;
[UIView animateWithDuration:2.4f
delay:0.0f
options:UIViewAnimationOptionCurveEaseInOut
animations:^{
button.transform = CGAffineTransformTranslate(button.transform, 0, -49);
}
completion:^(BOOL finished){}
];
}
答案 0 :(得分:1)
你的代码工作正常;问题必须在别处。
确保您没有在干扰翻译的其他地方进行任何布局工作。如果您为按钮设置了Autolayout约束,则可能会导致您看到的行为。您可以在文件检查器中禁用此UIView
的Autolayout(至少暂时),以查明是否属于这种情况。
您可能需要考虑更改按钮的框架而不是应用转换。