我的iOS应用程序屏幕在iOS 5维度中没有自动调整大小

时间:2015-01-16 10:37:09

标签: objective-c iphone screen

Screen UI是为3:2开发的,但是当我在iphone 5及更高版本的iOS模拟器中运行应用程序时,我看到屏幕下方有一个白色的补丁。其余的屏幕显示正确。

- (void)applicationDidFinishLaunching:(UIApplication *)application {    
    [self startup];
    [window addSubview:loginViewController.view];

    //For Eula
    NSDictionary *eulaDict = [EULAController getEULADictionary];
    if (eulaDict == nil || [ self checkForVersionChange] == TRUE) {
        eulaController = [[EULAController alloc] initWithNibName:@"eula"bundle:[NSBundle mainBundle]];
        //temp fix as for some reason this is showing up 20 pixels shifted upwards. if this works in your scenario then remove this adjustment
        CGRect frame1 =  CGRectMake(0,20,320,460);
        [eulaController.view setFrame:frame1];
        [window addSubview:eulaController.view];
    }

    [self updateVersionAndBuild];

    [window makeKeyAndVisible];

}

不确定,为什么它不适合整个屏幕。我没有启用AutoLayout选项,但它没有帮助,因为在应用程序启动期间,它停止了iphone 5/6。

提前致谢!

2 个答案:

答案 0 :(得分:0)

我猜你错过了Default-568h@2x.png默认启动图片......

如果是这样,只需在项目中添加一个即可。

答案 1 :(得分:0)

您已将相框硬编码为iPhone 4尺寸:

CGRect frame1 =  CGRectMake(0,20,320,460);

您已经说过使用autoLayout了。我将其删除并使用autoLayout约束,它将进行扩展。