没有NIB,UIWindow不填充屏幕,iOS 7

我完全避免使用NIB。 我在iOS 7.1上遇到问题,但在iOS 8.x上没有问题。

iOS 7与iOS 8

IOS 7iOS 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设置为UIWindow ,也会产生相同的结果。

[我已经看到了一些相关的问题,并尝试了这些build议,但无济于事,包括翻转的界限,如果是iOS 8等等]

问题是你没有4英寸屏幕的启动图像,所以iPhone 5s将这个应用程序视为一个3.5英寸的应用程序(iPhone 4)和letterboxing。