代码之家  ›  专栏  ›  技术社区  ›  Leonardo

ipad预编译器

  •  0
  • Leonardo  · 技术社区  · 15 年前

    在xcode中,我尝试加载不同的nib文件,以防我使用iphone/ipod或ipad。

    我有一个Define.h文件,里面有所有的枚举和常量,所以我想在里面放一种(显然是错误的,因为我不知道怎么做):

    #if IPHONE  // <-- can I intercept the Active Executable here ?
      #define MY_VIEW @"TableViewIphone.xib"
    #else
      #define MY_VIEW @"TableViewIpod.xib"
    #endif 
    

    在我的视图中,包含Define.h的控制器

    [[NSBundle mainBundle] loadNibNamed:MY_VIEW owner:self options:nil];
    

    我需要用设备模拟器来做这件事,有没有办法截取xcode中“活动可执行文件”中的内容,并有一套专门的define?还有其他更简单的选择吗?

    谢谢

    1 回复  |  直到 15 年前
        1
  •  1
  •   Shaggy Frog    15 年前

    您要做的是在 ,适用于设备。

    你所做的是 选择,这将设置用于所有设备的xib,这不是您想要的。

    我假设你正在构建一个通用应用程序,是吗?

    NSMainNibFile~ipad . (例如,我设置 NSMainNibFile~ipad MainWindow-iPad ... 注:无“.xib”位)

    UI_USER_INTERFACE_IDIOM 宏:

    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
    {
        // Load iPad xib
    }
    else
    {
        // Load iPhone xib
    }