0

我正在尝试使我的应用程序中的视图与 iPhone 5 兼容。我的故事板目前没有使用自动布局,当我在 iphone 5 模拟器或实际设备上运行它时,所有背景都会拉伸以适应屏幕,除了对于其中两个,其中一个的设置与所有其他拉伸相同,其中一个具有 AVVideoPreviewLayer。没有拉伸的两个在右侧有空白。那些拉伸的背景被拉伸了,但按钮都保留在它们在 Retina 3.5 屏幕上的位置,即向左移动。如果我启用自动布局,按钮都会对齐到正确的位置,但现在没有任何背景拉伸,之前不会拉伸的背景和已经拉伸的背景都不会拉伸。

我还没有找到很多关于优化 iphone 5 应用程序的好信息。4 英寸视网膜启动图像已在应用程序摘要中到位。如果有人能给我一些指导或指出一个很好的资源来解决这个问题,我将非常感激。

4

2 回答 2

0

当您启用自动布局时,您需要设置一些NSConstraints您应该为背景启用一些规则,例如“ Top Space To Superview ”和“ Bottom Space To Superview ”以及固定到Superview的宽度

所以主要思想是为Storyboard中的Objects建立一些规则`

于 2013-07-03T18:13:03.493 回答
0

对我来说,只有两个故事板是最有意义的,因为有足够的差异,如果不是完全不可能的话,做其他任何事情都会太困难了。我只是把它扔到我的应用程序委托 didFinishLaunchingWithOptions 中:

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone){
    UIStoryboard *storyBoard;

    CGSize result = [[UIScreen mainScreen] bounds].size;
    CGFloat scale = [UIScreen mainScreen].scale;
    result = CGSizeMake(result.width * scale, result.height * scale);

    if(result.height == 1136){
        storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone5" bundle:nil];
        UIViewController *initViewController = [storyBoard instantiateInitialViewController];
        [self.window setRootViewController:initViewController];
    }
}
于 2013-07-29T23:05:48.080 回答