UIView在将方向切换为横向后更改宽度?
问题描述:
我得到了2个子视图的UIView。 UIView被设置为UIViewAutoresizingFlexibleWidth。现在,当它进入layoutSubviews它会调整相对于子视图UIView的,像这样的框架:UIView在将方向切换为横向后更改宽度?
rect.size.width = self.frame.size.width - rect.origin.x - textLabel.frame.origin.x;
但在横向模式的原因产生的问题纵向模式self.frame.size.width(和该范围问题)在开始时和788完成旋转后回应768。当它旋转时的含义似乎增加了20像素,我认为它是状态栏。
当我硬编码768它都按预期工作。但我当然不希望这样。我可以将初始状态存储到一个var并使用它,但我认为这不是正确的方法。
任何人都有解决方案?
答
问候,
在我的应用程序我一直面临同样的问题。为了解决这个问题,我简单地使用didRotateFromInterfaceOrientation:
方法来调整设备旋转时的视图大小。 self.view.frame = CGRectMake(0,0,self.view.bounds.size.width,self.view.bounds.size.height);
希望这会有所帮助。