【发布时间】:2011-06-08 10:11:09
【问题描述】:
所以我想将子视图旋转 x 度(或至少 90 度)。我希望子视图围绕子视图的右下角旋转。是否可以像下图那样制作动画?
谢谢!
【问题讨论】:
标签: iphone objective-c
所以我想将子视图旋转 x 度(或至少 90 度)。我希望子视图围绕子视图的右下角旋转。是否可以像下图那样制作动画?
谢谢!
【问题讨论】:
标签: iphone objective-c
CGAffineTransform transform =
CGAffineTransformMakeRotation(angle);
yourSubView.transform = transform;
【讨论】:
你可以通过组合变换来做到这一点。先平移到旋转原点,然后旋转,再变换回原来的中心。您正在旋转的视图是 v。它在动画中只是为了好玩。
[UIView beginAnimations:nil context:NULL];
CGAffineTransform t = CGAffineTransformIdentity;
t =CGAffineTransformTranslate(t,- v.bounds.size.width/2, -v.bounds.size.height/2);
t = CGAffineTransformRotate(t, -M_PI/2);
t =CGAffineTransformTranslate(t,v.bounds.size.width/2, v.bounds.size.height/2);
v.transform = t;
[UIView commitAnimations];
【讨论】: