用于多视图的UIView动画

时间:2013-11-14 17:45:15

标签: ios objective-c animation uiview

我正在尝试为这样的两个视图制作动画:

CGAffineTransform transform = CGAffineTransformMakeRotation(M_PI_2);
CGRect rect = self.oneView.frame;
rect.origin.y =  10;

[UIView animateWithDuration:0.5 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{

    self.oneView.frame = rect;
    self.buttonView.transform = transform;

} completion:^(BOOL finished) {
    ...
}];

但只有buttonView已旋转。 OneView保持不变。但如果我发表评论

//self.buttonView.transform = transform;

OneView已经搬走了。

2 个答案:

答案 0 :(得分:0)

rect.origin.y = 10;可能会向您发出警告,因为您无法直接写入CGRect

您必须rect = CGRectMake(rect.origin.x, 10.0f, rect.size.width, rect.size.height)

答案 1 :(得分:0)

oneView和buttonView之间有什么关系?如果oneView是buttonView的子节点,那么这将是预期的效果。

您是否尝试过两次不同的通话来运行这些动画?