2012-04-12 44 views
2

我需要知道當前設備是iPad2還是新iPad。 我使用[[UIScreen mainScreen] Scale],但結果是1.0如何識別新iPad

+2

可能重複的[編程方式檢測一個iPad 3(HD)?(http://stackoverflow.com/questions/9688930/programmatically-detect-an-ipad-3-hd) – 2012-04-12 07:17:56

+1

用5.1 SDK構建你的應用程序,使用xcode 4.3 - 這種方式你應該得到iPad3的scale 2.0 – 2012-04-12 08:07:16

回答

5

如發現here

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad && [[UIScreen mainScreen]  respondsToSelector:@selector(scale)] && [UIScreen mainScreen].scale > 1) 
{ 
    // new iPad 
} 
+0

這種方法是無效的。新的ipad規模也1.並感謝你的答案。 – spmno 2012-04-12 07:17:41

+1

新的ipad規模爲2.0。你不需要檢查'respondsToSelector',因爲他正在查看iPad 2和新的iPad,這意味着它總是具有'scale'屬性 – jasondinh 2012-04-12 07:41:05

+0

@spmno - 我可以確認'scale'屬性在新iPad上返回2.0在我的所有應用程序中,所以這是一個可行的檢查。請注意,您需要使用iOS 5.1 SDK進行構建才能使其工作。 – 2012-04-16 15:46:22