...
[[UIApplication sharedApplication] setStatusBarHidden:YES];
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.window.rootViewController = self.viewController;
[window makeKeyAndVisible];
...
这是我的app委托中的代码,它正在加载一个viewcontroller(或根视图控制器)。此视图控制器执行一些检查并根据检查加载另一个视图。
但是viewcontroller加载的视图跳了20px,我搜索了很多关于这一点,主要是状态栏被指责,所以我试图隐藏它,但没有用。
请再告诉我一下,initWithNibName和init之间的区别似乎都在做同样的工作。
经过大量搜索仍然没有得到任何解决方案,这就是为什么我想知道,有什么可能使uiview跳出20px的场景
...在这种情况下,手动调整视图大小不是一个好习惯。我想找出这种跳跃的实际原因,这样可以用标准的方式修复问题而不是黑客攻击。
答案 0 :(得分:2)
viewController的initWithNibName
和init
的区别在于initWithNibName
您可以为此viewController nib文件指定任何名称,其中init仅搜索要加载的特定nib名称
例如,
如果您的viewController名称为MyViewController
,那么当您调用init时,将搜索并加载名为MyViewController.xib
的nib控制器
如果您致电initWithNibName
,则可以指定任何笔尖名称
关于跳跃问题,我也猜测这是一个状态栏问题,请提供更多信息