1

所以我制作了这个应用程序,在提交时我需要抓取 4' 的屏幕截图。

我基于我的应用程序在 3.5 英寸设备上运行,所以我想,当我在 4 英寸设备上运行它时,可能会有信箱。

不知何故,界面适应了 4' 屏幕,但图像和标签放错了位置。

当我将 .xib 编辑为在 4' 屏幕上看起来不错时,在 3.5 屏幕上会发生完全相反的情况。东西放错了地方。

在创建我的项目(大约 20 个 .xib)时,我总是选择“3.5' 屏幕”而不是“Freeform”或默认的“4' 屏幕”。

现在如何将其更改为在两种屏幕尺寸上看起来都不错?有没有一种方法可以编辑两种大小的 xib 而不必重建它?

4

1 回答 1

6
  • 复制每个 XIB 并给它一个后缀,例如 MyViewController.xib -> MyViewController_568.xib
  • 重新安排新的 XIB
  • 覆盖 initWithNib

    - (id)initWithNibName:(NSString *)nibName bundle:(NSBundle *)nibBundle { 
    if ([UIScreen mainScreen].bounds.size.height > 480) {
        nibName = [NSString stringWithFormat:@"%@_568", nibName];
    }
    if (self = [super initWithNibName:nibName bundle:nibBundle]) {
    
    }
    return self;
    

    }

于 2013-04-09T18:44:05.983 回答