gpt4 book ai didi

iphone - 关于 Xcode 4 中通用应用程序的问题

转载 作者:行者123 更新时间:2023-12-03 20:22:08 25 4
gpt4 key购买 nike

我正在尝试使用 Xcode 4 构建一个通用应用程序。但是,它似乎与过去的版本有点不同。

我的项目使用基于 View 的应用程序模板。我的问题是我添加了一个 UIViewController 子类,它有一个适用于 iPad 的 nib 文件。如何创建另一个具有相同类目标的 nib 文件,而不是针对 iPhone?另外,如何确保为正确的平台加载正确的 nib 文件?

编辑:这是我的代码:

- (IBAction)BookView {

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
BookViewController *viewController = [[BookViewController alloc] initWithNibName:@"BookViewController" bundle:nil];
[self presentModalViewController:viewController animated:YES];

} else {

BookViewController *viewController = [[BookViewController alloc] initWithNibName:@"BookViewController_iPad" bundle:nil];
[self presentModalViewController:viewController animated:YES];
}
}

最佳答案

第 1 步:为 iPhone 创建:

  • 新建文件/ios/cocoa touch/UIViewController子类
  • 取消选中“针对 iPad”
  • 与 XIB 核实

此步骤将创建同名的 .m .h 和 .xib 文件,例如:CustomView

第 2 步:为 iPad 创建新的 XIB:

  • 新文件/ios/用户界面/ View 设备系列 iPad
  • 为方便起见,请选择带有后缀 _iPad 的相同名称(例如 CustomView_iPad)
  • 在此 xib 中,转到文件所有者,在检查器选项卡中选择身份检查器、自定义类,然后选择与步骤 1 中创建的类相同的名称。
  • 连接 IBOutlet。

在您的代码中使用如下内容:

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
CustomView *viewController = [[CustomView alloc] initWithNibName:@"CustomView" bundle:nil];
} else {
CustomView *viewController = [[CustomView alloc] initWithNibName:@"CustomView_iPad" bundle:nil];
}

祝你好运!

关于iphone - 关于 Xcode 4 中通用应用程序的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8232099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com