状态栏框架粘贴到纵向,并遮挡window.view
我正在开发一个支持所有方向的iPad应用程序。 我不使用笔尖。 我有一个UIWindow,提出了四个意见:
其中两个占据全宽,但没有太多的高度。
另外两个占据了高度的大部分,并共享相同的origin.x。 它们不重叠。
我指定一个视图作为主窗口的子视图,其余的子视图都是window.view。
问题:旋转之后,无论方向如何,状态栏的框架都会保持原来的位置(纵向顶部)。 虽然,状态栏确实在旋转。
我没有注意到红眼镜的信息文章。 但是,这并没有出现相同的问题。 这是不同的,红眼镜方法通过将主视图设置为窗口的子视图来覆盖状态栏条。 我采取了这种方法,但问题依然存在。
我已经尝试了重新编译和重新调用willRotateToInterfaceOrientation ::中的window.view框架,但运气不大。 我已经证实,新框架/中心是我所期望的。 看起来好像在后台正在进行一些重构。
我不知道现在该怎么想……我希望有人能够对这个问题有所了解。
最后! 我得到了连贯一致的意见。
原来问题出在didFinishLaunchingWithOptions:
问题是我正在初始化我的UIWindow通过initWithFrame:[[UIScreen mainScreen] applicationFrame];
当我使用init初始化时,视图按预期定位。 它只在离开redirect代码的时候才起作用:(如上所述)。
在willRotateToInterfaceOrientation中,我为每个视图计算并设置了正确的帧,然后使用UIView将转换整合到旋转animation中animateWithDuration :::::
我将倒数第二个select器参数中的新帧设置为animateWithDuration。
希望这可以帮助别人…