iphone - UI_USER_INTERFACE_IDIOM 是否适用于目标设备系列

标签 iphone ipad ios-simulator

因此,我目前正在将 UI_USER_INTERFACE_IDIOM 与 [[UIDevice currentDevice] model] 结合使用来检查我是否使用的是 iPhone、iPod 或 iPad。我发现在iPad模拟器3.2中,UI_USER_INTERFACE_IDIOM仍然评估为UIUserInterfaceIdiomPhone(iPhone)。

我想知道这是否与我的目标设备系列设置有关。我的应用程序仅针对 iPhone(我不想制作具有缩放 View 的通用应用程序)。不过,我支持 3.2 SDK,因此我仍然希望拥有 iPad 的用户能够运行我的 iPhone 应用程序。 即使我的目标是 iPhone,UI_USER_INTERFACE_IDIOM 能否在 iPad 上正确评估?

最佳答案

UI_USER_INTERFACE_IDIOM 检查设备是否是 iPhone 或 iPad。它检查的是用户界面是否处于 iPhone 模式(1x/2x 模式)或 iPad 模式。

如果应用程序未配置为面向 iPad,它将始终返回 UIUserInterfaceIdiomPhone,因为 UI 是 iPhone 应用程序。这是设计时的一个功能。

即使应用程序配置为仅针对 iPhone,只要您使用记录的方法,iPad 也应该能够毫无问题地运行它。

(如果您需要 iPad 特定的功能,不要检查该设备是否真的是 iPad。而是检查单独的功能。)

关于iphone - UI_USER_INTERFACE_IDIOM 是否适用于目标设备系列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3167740/

相关文章:

c# - Xamarin 是否支持在没有 mac 的 windows 机器上进行 iPad 和 iTouch 开发?

ios - XCode IOS 模拟器不会将我的任务置于后台

ios - 如何在屏幕上显示模拟器键盘时使用 Mac 键盘

iphone - 在 iPhone 上的 Facebook 上分享来自 bundle 和链接的图像

iphone - 如何应用正则表达式和/或清理电话线?

iphone - 如何将相机按钮添加到 UITabBar 中?

ios - UIPopoverController 在运行 iOS 5.0.1 的 iPad 上崩溃?

iphone - iOS7状态栏问题

ios - 是否可以在没有自动布局的情况下为 iPad 设计 View ?

objective-c - iOS设备和iPhone模拟器的内存组织差异