iOS 检测用户是否在 iPad 上

标签 ios objective-c swift ipad device

我有一个可以在 iPhone 和 iPod Touch 上运行的应用程序,它可以在 Retina iPad 和所有设备上运行,但需要进行一次调整。我需要检测当前设备是否是 iPad。我可以使用什么代码来检测用户是否在我的 UIViewController 中使用 iPad,然后进行相应的更改?

最佳答案

有很多方法可以检查设备是否是 iPad。这是我最喜欢的检查设备是否真的是 iPad 的方法:

if ( UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad )
{
    return YES; /* Device is iPad */
}

我使用它的方式

#define IDIOM    UI_USER_INTERFACE_IDIOM()
#define IPAD     UIUserInterfaceIdiomPad

if ( IDIOM == IPAD ) {
    /* do something specifically for iPad. */
} else {
    /* do something specifically for iPhone or iPod touch. */
}   

其他例子

if ( [(NSString*)[UIDevice currentDevice].model hasPrefix:@"iPad"] ) {
    return YES; /* Device is iPad */
}

#define IPAD     (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
if ( IPAD ) 
     return YES;

有关 Swift 解决方案,请参阅以下答案:https://stackoverflow.com/a/27517536/2057171

关于iOS 检测用户是否在 iPad 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10167221/

相关文章:

ios - 如何将 UITableViewCell 高度调整为内部 UITextView 的内容?

iphone - 如何使用代码在 ios 应用程序中录制屏幕视频?

ios - NSUserDefaults 加载问题

ios - XCode控制台输出中的Bugsense隐藏异常

objective-c - IBAction 陷入循环

iOS。具有自定义高度的 UINavigationBar -> 垂直居中 titleView & barButtonItems

ios - 通过 MKAnnotation Callout Swift 创建文本字段

嵌套结构类型的 Swift 数组 (count, repeatedValue)

iphone - 生成新证书后推送通知不起作用

iOS 8 : UINavigationController hide back button