objective-c - 将两个 XIB 连接到一个 ViewController

标签 objective-c ios xcode uiviewcontroller views

总的来说,我希望有一个适用于 iPhone 的 View ,以及一个适用于 iPad 的 View 。但是,我想对它们使用相同的 View Controller ,因为它们是相同的,只是针对每个设备进行了优化。

我知道这样做是可能的,因为它是一个通用应用程序,通用项目的默认 View 包括一个用于 iPhone 的主视图和一个用于 iPad 的主视图。但是,它们是自动实现的,所以我不知道如何复制它。

所以,这个问题的要点是:如何将两个 xib 连接到一个 View Controller ?

谢谢,

  • jack
  • 最佳答案

    在代码中..无论您在哪里使用新 View ..都这样做

    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
    {
                self.MainView = [[[YOurViewController alloc] initWithNibName:@"YOurViewController_iPad" bundle:nil]autorelease];
    
    }
    else
    {
        self.MainView = [[[YOurViewController alloc] initWithNibName:@"YOurViewController_iPhone" bundle:nil]autorelease];
    }
    

    您将不得不用您的替换 Nib 名称和类名..

    在此之上...一个 更重要的一步是进去每个xib文件 ..点击文件所有者 .. 在 i*dentity inspector* 中(右上角的图标).. 确保它是 类 YOurViewController

    关于objective-c - 将两个 XIB 连接到一个 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9661919/

    相关文章:

    ios - 找不到 Xcode Clang 错误文件

    ios - UIBarButtonItem 在 iOS 7 上不平坦

    ios - 在另一个项目中使用 Xcode 项目

    iphone - 粘贴的代码不能在新项目中工作?

    ios - CIImage内存泄漏

    ios - 仅在某些设备中 URL Session 数据任务回调中出现 SSL 错误

    iOS:如何更改 UICollectionViewCell 的方向?

    ios - 在 ViewController 上显示 SVProgressHUD?

    objective-c - Ubuntu下学习Objective-C需要搭建什么开发环境

    ios - 如何在 Swift 中使用 Storyboard将 UIView 居中