在状态栏下绘制的视图

时间:2011-04-08 16:48:32

标签: ios view uinavigationbar

所以我设法在有人按下按钮时加载另一个视图,但是它将其加载到高位。 `我不知道为什么会这样。区别在于顶部的高度。这是我的代码: 在代表中我有:

- (void)flipToAbout {
AboutViewController *aaboutView = [[AboutViewController alloc] initWithNibName:@"AboutViewController" bundle:nil];
[self setAboutController:aaboutView];
[aaboutView release];

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:window cache:YES];
[homeController.view removeFromSuperview];
[self.window addSubview:[aboutController view]];
[UIView commitAnimations];}

在about视图中我没有改变任何东西。请告诉我什么是问题。谢谢。

1 个答案:

答案 0 :(得分:1)

问题在于您将视图直接添加到窗口而不考虑导航栏。通常,如果您有导航栏,则使用导航控制器来管理视图控制器。将视图控制器推送到导航控制器的堆栈会导致导航控制器将该视图控制器的视图添加到窗口,您不必担心导航栏。但是,由于您是手动完成的,因此在将视图添加到窗口后,您需要重新定位视图。

请注意,除了从笔尖加载视图外,此问题与nib无关。如果以编程方式创建视图,也会发生同样的事情。