我完全避免使用 NIB。我在 iOS 7.1 上遇到问题,但在 iOS 8.x 上没有。
iOS 7 与 iOS 8
代码在 UIResponder <UIApplicationDelegate>
中看起来像这样
- (void) setupViewController {
CGRect frame = UIScreen.mainScreen.bounds;
self.window = [[UIWindow alloc] initWithFrame:frame];
self.window.backgroundColor = UIColor.whiteColor; // viewController's view is green
ViewController *viewController = [[ViewController alloc] init];
UIView *view = [[UIView alloc] initWithFrame:self.window.bounds];
viewController.view = view;
self.window.rootViewController = viewController;
[self.window makeKeyAndVisible];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[self setupViewController];
return YES;
}
我也尝试过一些处理 iOS 8 的方法,但甚至设置了 UIWindow
frame
至 5000, 5000
产生相同的结果。
[我看过很多相关问题并尝试了这些建议,但无济于事,包括如果是 iOS 8 则翻转边界等等]
最佳答案
问题是您没有 4 英寸屏幕的启动图像,因此 iPhone 5s 将此应用程序视为 3.5 英寸应用程序 (iPhone 4) 并对其进行信箱处理。
关于ios - 没有 NIB,UIWindow 没有填满屏幕,iOS 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28331273/