UINavigationController必须在3.5英寸屏幕上将视图高度设置为548

时间:2013-03-12 11:21:18

标签: iphone objective-c ios6

我认为这里有一个特例,因为我有一个UIViewController,其IB视图设置为4英寸大小,并添加了一个带有addChildViewController的UINavigationController(Facebook / Path like slider菜单)。我现在面临的问题是,如果我运行app,设置时UINavigationController视图的高度为372

containerViewController.view.frame = CGRectMake(0, 0, 320, 460);

我要将高度设置为548,以便在3.5英寸设备上获得正确的460高度。我该如何解决这个问题?

Simulator screenshot

我在UIBarButtonItem上注册一个事件,用

滑出屏幕
[UIView animateWithDuration:0.3 delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
            self.navigationController.view.frame = CGRectMake(268, 0, 320, 460);
        } completion:^(BOOL finished){ }];

当点击按钮时,UIView设置为正确的高度,但我使用的是(268, 0, 320, 460)与CGRectMake完全相同的大小。

当我在

之后设置帧时
[self.window makeKeyAndVisible];

它正在使用460作为高度,为什么这个工作,我认为iOS只在makeKeyAndVisible

之后才执行显示尺寸调整

0 个答案:

没有答案