【发布时间】:2013-11-12 06:53:59
【问题描述】:
我在 UIImageView (self.myImage) 中有一个透明 png,我想围绕它的中心点旋转它。
代码应该很简单:
[self.myImage.layer setAnchorPoint:CGPointMake(0.5, 0.5)];
[UIView animateWithDuration:1.0 animations:^{
[self.myImage setTransform:CGAffineTransformMakeRotation(angle)];
}];
图像以正确的速度/时间和正确的角度旋转,但其位置发生了偏移。这是正在发生的事情的一个示例:
灰色方块只是为了显示在屏幕上的位置。另一个图是透明的 png(包含在 UIImageView 中)。白色虚线显示 UIImageView 的中心。图像左侧显示图像的原始位置,右侧显示使用上述代码旋转后的图像(向右移动一点)。黑白圆圈位于图像文件的中心。
我有什么遗漏的吗?据我了解,上面的第一行不是必需的,因为这些是默认值。我是否必须在情节提要中/以编程方式设置/取消设置某些内容?
【问题讨论】:
-
图片文件的中心是黑白圆圈吗?
-
@godel9 是的,黑白圆圈在图片文件的中心
标签: ios iphone objective-c uiimageview cgaffinetransform