我正在尝试旋转UIImageView并使其保持居中。在下面的图像中,我希望旋转的箭头(红色十字线)中心点与0°箭头的中心点(蓝色十字线)匹配。
我尝试了各种锚点,但我似乎无法按照自己的意愿行事。
// Rotate
self.arrowRotatedImageView.layer.anchorPoint = CGPointMake(0.5,0.5);
CGFloat angle = 45 * (M_PI/180);
self.arrowRotatedImageView.transform = CGAffineTransformMakeRotation(angle);
我错过了什么?我正在阅读Apple docs 但我无法弄清楚。
答案 0 :(得分:6)
原来奇怪的轮换问题与新的iOS 6自动布局功能有关。一旦我花了一些时间来理解对齐约束如何工作,我就能够达到我想要的结果。
如果您遇到奇怪的轮换问题,并且正在使用启用了autolayout的iOS 6,则可能需要调整约束。
关键是在旋转的父视图中将图像垂直和水平居中。
答案 1 :(得分:2)
我遇到了同样的问题,我通过将Center X Alignment Constraint
和Center Y Alignment Constraint
应用于相关的UIImageView
来解决问题。这样做会阻止图像远离其中心x和y位置。