我已经在互联网上搜索了如何在UIImageView中旋转图像而不会使图像偏斜。 我测试的所有例子都没有奏效。所以我必须在这里发布一个具体的问题。
我的旋转代码如下所示。 结果显示在我链接到的图像中(有一个低于5的代表,我无法在帖子中附加图像)。我输入了角度值,图像显示了旋转后图像的结果。
旋转在0度,90度,180度和270度下工作正常。其他一切都会扭曲形象。
self rotateImage:_compassScale duration:1 curve:UIViewAnimationCurveEaseIn degrees:(CGFloat)bearing];
- (void)rotateImage:(UIImageView *)image duration:(NSTimeInterval)duration curve:(int)curve degrees:(CGFloat)degrees
{
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:duration];
[UIView setAnimationCurve:curve];
[UIView setAnimationBeginsFromCurrentState:YES];
CGAffineTransform transform = CGAffineTransformMakeRotation(DEGREES_TO_RADIANS(-degrees));
image.transform = transform;
[UIView commitAnimations];
}
90 degrees 120 degrees and skewed
如果您将URL更改为Im1,Im4和Im5,还有3个图像。代表不允许发布超过2个链接。
经过大量工作后,我发现约束与倾斜有关。 NESW环(罗盘玫瑰?)是一个图像,我居中在另一个图像,即罗盘框架。并且使用这些图像来处理文本字段也是以图像为中心。
如果我将NESW环拖到屏幕上的另一个位置,图像不会歪斜。但它反而在屏幕上移动。
我移动了所有3个项目,然后将它们拖回到屏幕上的原始坐标。不再有任何倾斜。 但是当我在“文本”字段中更改角度时,两个“图像”都会稍微改变位置,并且更改似乎并不表示环的更改位置连接到帧的位置通道。 奇怪的是,我没有移动指南针框架的代码!
任何想法如何对付这个?
答案 0 :(得分:1)
关闭自动布局。选择xib或storyboard,然后在File Inspector(右侧窗格的第一个)中,有一个“use autolayout”复选框。取消选中它(默认情况下处于启用状态)。
然后你应该得到预期的结果。
除非您有理由使用它,否则应始终保持自动布局关闭。