我已经为 iOS 8 开发了键盘。根据设备是 iPhone 还是 iPad,我会加载不同的布局。现在,当用户打开应用程序(例如:Instagram)时,我遇到了一个问题,它是 iPhone 应用程序但下载在 iPad 上,当然 iPad 会调整此应用程序的大小。我的键盘将设备检测为 iPad 并为 iPad 加载布局,但由于应用程序不是 iPad 应用程序,加载的键盘布局不适合它。很快,有没有办法以编程方式检查应用程序是否是由 iPad 调整大小的 iPhone 应用程序?所以我可以为它加载正确的键盘布局。
最佳答案
如果该应用程序是在 iPad 上以模拟器模式运行的 iPhone 应用程序(如您的示例中的 Instagram),它将具有 Phone 的 userInterfaceIdiom,但模型类型为 iPad。您可以使用以下代码进行检查:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone &&
[[[UIDevice currentDevice] model] hasPrefix:@"iPad"]) {
// This app is an iPhone app running on an iPad, use iPhone-style layout
}
希望这适用于您的自定义键盘。
关于ios - 检查应用程序是否是在 iPad 上打开的 iPhone 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28260573/