我已经为 iPhone 创建了一个 iOS 应用程序,它已经发布并且可以运行了。我现在重新审视它以支持原生 iPad 格式。我已将项目类型更改为通用并添加了一个新的 iPad 故事板,加上一个 Objective-C 类(.h、.m)来配合它,但我似乎无法链接该类和故事板。
例如,我不能 Ctrl - 将项目从情节提要拖到新类中以在对象上使用它们。您如何将新的故事板和与它们一起使用的类添加到 iOS 应用程序?
我已经为 iPhone 创建了一个 iOS 应用程序,它已经发布并且可以运行了。我现在重新审视它以支持原生 iPad 格式。我已将项目类型更改为通用并添加了一个新的 iPad 故事板,加上一个 Objective-C 类(.h、.m)来配合它,但我似乎无法链接该类和故事板。
例如,我不能 Ctrl - 将项目从情节提要拖到新类中以在对象上使用它们。您如何将新的故事板和与它们一起使用的类添加到 iOS 应用程序?
除非您将情节提要中的视图控制器对象设置为与您创建的新视图控制器类(在身份检查器中)具有相同的类,否则您将无法通过控制拖动来创建出口或动作。
另外,我不知道您的具体要求,但通常最好为 iPad 和 iPhone 使用相同的视图控制器类,然后在需要的地方进行分支。
Storyboard 只是您的场景(视图控制器、导航控制器、TabBar 控制器等)的容器。您将类与场景(VC、NC、TBC 等)相关联。您要做的是根据您所需的应用程序流程添加视图控制器或 NV、TBC 等。然后,您将把它与您创建的父类相关联。
然后,您所要做的就是确保您正在使用以下方式检查设备类型:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
// iPad
}
else
{
// iPhone or iPod touch.
}
并在 Application Summary 中设置适用于 iPad 的 Storyboard
最好为 iPhone 做一个类,例如: ITViewController 和另一个名为 ITViewControllerHD 的类,他们将从 ITViewController 继承并重载每个必要的类以避免重复此代码:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
// iPad
}
else
{
// iPhone or iPod touch.
}
我认为它更清洁:/