3

我的视图表示有一个奇怪的行为。

我的结构:

Window -> MyTabbarController -> GraphViewController -> (modal) SelectItemViewController;

窗口设置:

在此处输入图像描述

在我将我的应用程序更新为视网膜 4 分辨率(并将UIWindowWindow.xib 中的大小设置为Retina 4 fullscreen)后,在Retina 3.5 设备originmyTabbarController设置为 0,88 (在视网膜 4 中没有问题)。

在此处输入图像描述

如果我使用non-modal控制器,我可以旋转到最后,一切正常。

但是,如果我调用modal viewin UIInterfaceOrientationLandscapeLeftUIInterfaceOrientationLandscapeRight一切正常)或dismiss处于modalView相同状态,parentViewof GraphViewController( MyTabbarController) 会得到错误的帧......

调用模态视图: 在此处输入图像描述

关闭模态视图 在此处输入图像描述

我很感激每一个帮助。

ps:将UIWindow尺寸设置为Retina 3.5 fullscreenfreeform会使iPhone 5看起来不对。也设置modalPresentationStyle不做任何事情:/

4

1 回答 1

0

通过在代码中设置窗口大小解决了问题:

- (void)applicationDidFinishLaunching:(UIApplication *)application 
{
    window.frame = [UIScreen mainScreen].bounds;
    window.rootViewController = tabBarController;
    ...

设置后,框架始终设置在正确的位置。

我认为这只是视图绑定到窗口的问题,以及它在这个“容器”中的方向(屏幕的“宽度”为480,但在横向模式下帧为568像素。灰色部分就是这种差异( 88 像素)到模态视图的右侧(无界)

于 2013-08-26T07:47:42.513 回答