iOS会检测用户是否在iPad上
我有一款运行在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
在Swift中,您可以使用以下等式来确定通用应用程序上的设备类型 :
UIDevice.current.userInterfaceIdiom == .phone
// or
UIDevice.current.userInterfaceIdiom == .pad
用法会是这样的:
if UIDevice.current.userInterfaceIdiom == .pad {
// Available Idioms - .pad, .phone, .tv, .carPlay, .unspecified
// Implement your logic here
}
这是iOS 3.2以来的UIDevice的一部分,例如:
[UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad
链接地址: http://www.djcxy.com/p/62905.html
上一篇: iOS detect if user is on an iPad
下一篇: Retina images (@2x~ipad) not loaded if iPad image doesn't exist (~ipad)