可能重复:
iOS bounds change after rotating to landscape, then back to portrait
我有一个UIViewController,根据其方向,将底层xib从横向切换为纵向,反之亦然。
这方面的机制非常简单。在willRotateToInterfaceOrientation中,我检查我们要更改的方向,然后加载正确的xib并调用[self viewDidLoad]。
结果是我的所有视图都获得了正确的插座,并且所有标准UI组件看起来都很好。
问题出现在我在旋转期间再次布局的自定义组件上。它的问题是,当我读取该组件的帧时,willRotateToInterfaceOrientation中的结果帧不是预期在新控制器中的帧。它就在两者之间,就像它是动画的帧一样。 / p>
这曾经发生在任何人身上吗?有没有更好的方法来实现这一目标?