1

我有一个带有按钮的视图,当通过简单的翻译点击它时,它会向上移动。但是,当使用 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){}
     ];

}

目前看起来如何

4

1 回答 1

1

您的代码工作正常;问题必须在其他地方。

确保您没有在其他地方进行任何干扰翻译的布局工作。如果您为按钮设置了自动布局约束,这可能会导致您看到的行为。您可以在文件检查器中为此禁用自动布局UIView(至少暂时)以了解是否是这种情况。

您可能需要考虑更改按钮的框架而不是应用转换。

于 2013-07-01T15:42:26.883 回答