【发布时间】:2014-12-26 14:39:52
【问题描述】:
我是 SWIFT 的新手,我正在练习学习,但我在某些方面遇到了一些困难。 我在 Main.storyboard 中定义的 UIImageview 中有一个图像,需要旋转。
我有一个 IBOutlet 定义为:
@IBOutlet weak var imageToRotate: UIImageView!
我试图用最右边和中间高度的旋转中心旋转它,根据苹果文档和这里的一些帖子,我使用了锚点:
imageToRotate.layer.anchorPoint = CGPointMake( 1.0, 0.5 )
然后我尝试使用变换来旋转它:
imageToRotate.transform = CGAffineTransformMakeRotation(CGFloat( myRadians ) )
图像是在 Main.storyboard 中定义的,加载时看起来不错,但是当我发出 anchorPoint 时,图像会向左移动,右边缘会移动到图像的中心位置和旋转位置发生在那个点附近。
我尝试使用:
imageToRotate.center = CGPointMake( 487, 160)
将图像移回它应该在的位置,但它没有移动,这也让我感到困惑。
我想我在这里遗漏了一些东西,但我无法弄清楚它是什么。我是否必须定义一个子层或其他东西? 此外,仅发出锚点会移动图像这一事实告诉我,我缺少一些东西。
在类定义中,我使用了它并将其链接到情节提要的 UIImage:
@IBOutlet weak var imageToRotate: UIImageView!
在 viewDidLoad() 的覆盖中我使用了这个:
imageToRotate.layer.anchorPoint = CGPointMake(1.0, 0.5)
imageToRotate.transform = CGAffineTransformMakeRotation(CGFloat( myRadians ) )
谢谢。
【问题讨论】:
标签: ios iphone swift uiimageview image-rotation