2

...

[[UIApplication sharedApplication] setStatusBarHidden:YES];

self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.window.rootViewController = self.viewController;
[window makeKeyAndVisible];

...

这是我的应用程序委托中的代码,它正在加载视图控制器(或根视图控制器)。此视图控制器执行一些检查并根据检查加载另一个视图。

但是viewcontroller加载的视图向上跳了20px,我对此进行了很多搜索,主要是状态栏受到指责,所以我试图隐藏它,但没有用。

请再告诉我一件事 initWithNibName 和 init 之间的区别似乎都在做同样的工作。

在搜索了很多之后仍然没有得到任何解决方案,这就是我想知道的原因,让 uiview 跳跃 20px 的所有可能场景是什么

...在这种情况下,手动调整视图大小不是一个好习惯。我想找出这种跳跃的实际原因,以便可以以标准方式解决问题,而不是通过黑客攻击。

4

1 回答 1

2

与viewController 的区别在于,initWithNibName您可以为此 viewController nib 文件指定任何名称,其中 init 仅搜索要加载的特定 nib 名称initinitWithNibName

例如,如果你的 viewController 名称是MyViewController,那么当你调用 init 时,MyViewController.xib会搜索并加载带有 name 的 nib 控制器,如果你调用initWithNibName,你可以指定任何 nib 名称

关于跳跃问题,我猜是状态栏问题,请提供更多信息

于 2012-06-16T08:19:35.420 回答