1

我正在尝试向我的 iphone 窗口添加一个子视图,并且为此编写了以下代码。问题是当启动视图或主菜单视图出现在屏幕上时,它会在状态栏后面。我的意思是视图从状态栏后面开始。当主菜单视图在初始视图之后显示时,两个视图也会重叠。有人可以帮忙吗?谢谢

- (void)applicationDidFinishLaunching:(UIApplication *)application {
       [window addSubView: [[Resources getResources] getSplashView]];
       [vindow makeKeyAndVisible];
       [self performSelector:@selector(displayMainMenuView) withObject:nil afterDelay:2.0];
  }


 -(void) displayMainMenuView {
       [window addSubView: [[Resources getResources] getMainMenuView]];`   
  }
4

3 回答 3

2

您也可以只调整主菜单的框架,例如:

mainMenuViewController.view.frame = CGRectMake(0.0f, 20.0f, 320.0f, 460.0f);

这将使您的视图位于状态栏下方。

于 2010-07-21T11:03:34.607 回答
0

这就是根视图发生的情况。尝试设置窗口的 rootViewController,而不是使用 addSubView 方法。像这样的东西:

  • (void)applicationDidFinishLaunching:(UIApplication *)application { window.rootViewController = [[Resources getResources] getSplashViewController ]]; [vindow makeKeyAndVisible]; [self performSelector:@selector(displayMainMenuView) withObject:nil afterDelay:2.0]; }

    -(void) displayMainMenuView { window.rootViewController = [[Resources getResources] getMainMenuViewController ]];
    }

请注意,您应该设置控制器对象,而不是视图对象。因此,在您的情况下,您需要像 getMainMenuViewController 这样的吸气剂。

于 2012-05-10T21:01:03.330 回答
0

statusBarHidden显示启动视图时将属性设置为 YES

- (void)applicationDidFinishLaunching:(UIApplication *)application {
       application.statusBarHidden = YES;
       [window addSubView: [[Resources getResources] getSplashView]];
       [vindow makeKeyAndVisible];
       [self performSelector:@selector(displayMainMenuView) withObject:nil afterDelay:2.0];
  }
于 2010-07-21T08:10:46.117 回答