增加旋转的UIView的宽度

时间:2017-01-04 21:43:13

标签: ios swift

我有一个用旋转的UIView:

view.transform = CGAffineTransform.init(rotationAngle: (CGFloat.pi / 2) * 1.5)

这会将我的视图旋转45度。我正在尝试为此视图设置动画,以便使用以下方法扩展其宽度:

UIView.animate(withDuration: 2.0, animations: { 
view.frame.size.width = 150 })

当我运行应用程序时,视图无法正确转换。它的宽度延伸,但它的高度也是如此。附图显示了我想要做的事情。有没有人对我如何动画这个观点有任何建议?

Before | After

1 个答案:

答案 0 :(得分:0)

来自UIView frame的文档:

  

可以设置对此属性的更改。但是,如果transform属性包含非标识变换,则frame属性的值是未定义的,不应修改。在这种情况下,您可以使用center属性重新定位视图,并使用bounds属性调整大小。

因此,不要为frame设置动画,而是为bounds设置动画。