iOS - 查看旋转和调整大小

时间:2014-04-02 06:54:08

标签: ios iphone objective-c

这是myView

Here is myView

何时

self.myView.transform = CGAffineTransformMakeRotation(M_PI*0/180);

[self.myView setFrame:CGRectMake:(self.myView.frame.orgin.x,self.myView.frame.orgin.y,300,self.myView.frame.size.height)];

它将是

enter image description here

现在我旋转视图

enter image description here

再次这样做

self.myView.transform = CGAffineTransformMakeRotation(M_PI*0/180);

[self.myView setFrame:CGRectMake:(self.myView.frame.orgin.x,self.myView.frame.orgin.y,300,self.myView.frame.size.height)];

enter image description here

这里发生了什么?

看起来像宽度被拉伸了。

无论如何要解决它还是有其他方法来旋转和调整大小?

1 个答案:

答案 0 :(得分:1)

您应该使用boundscenter属性调整大小并放置视图,如果transform属性不是标识转换,则不应使用框架

(请参阅UIView documentation for frame上的警告)

当您的视图旋转时,

frame.size不等于bounds.size,如果您希望视图的宽度为300,则应设置边界