我想使用以下代码旋转 imageView:
[UIView animateWithDuration:.25 animations:^{
self.imageView.transform = CGAffineTransformRotate(self.plusView.transform, M_PI_4);
}];
连线的事情是:如果我在没有自动布局的情况下运行这段代码,一切都很好。但是当使用自动布局时,图像视图在旋转之前会移动一个小像素,为什么?
我想使用以下代码旋转 imageView:
[UIView animateWithDuration:.25 animations:^{
self.imageView.transform = CGAffineTransformRotate(self.plusView.transform, M_PI_4);
}];
连线的事情是:如果我在没有自动布局的情况下运行这段代码,一切都很好。但是当使用自动布局时,图像视图在旋转之前会移动一个小像素,为什么?
在 Xcode 5 中使用自动布局时,需要添加一个约束来固定 imageView 在其容器中的水平中心和垂直中心。如果您使用情节提要,这可以通过约束选项轻松完成。如果您不希望 imageView 自动调整大小,您还需要使用约束来修复宽度和高度。
我没有对 chazzwozzer 的回答发表评论的声誉(我的帐户因最近对 Facebook 登录的更改而被重置)。这个答案对我很有用..通过将正在转换的控件放入具有不同约束的 UIView 中。然后,正在转换的控件在该视图中设置为水平和垂直中心。
仅供参考 .. 转换的转变在后来的 iOS 8 上没有发生 .. 仅在 iOS 7.1 上。