2012-11-01 7 views
6

Normal bir ipad'ın 10 inç ekranında sadece kabul edilebilir olan bazı oldukça küçük dokunma noktalarına sahip bir ipad uygulamasına sahibim. Cihazın dpi'sini alabilmem için minik elemanların boyutunu küçültebilirim ve gelecekteki mini'ler serbest bırakılır. kodunuzda sabit olarak saklamak gerekir, böylece programlı bu alamayanBir ipad mini'deki dpi'yi nasıl algılayabilirim?

http://www.apple.com/ipad-mini/specs/

:

+0

[Bu yanıt] (http://stackoverflow.com/a/7922666/759019) yardımcı olabilir. –

+0

[çalışma zamanında iPhone/iPad/iPod Touch'ın ppi dosyasını alın] olası kopyası (http://stackoverflow.com/questions/3860305/get-ppi-of-iphone-ipad-ipod-touch-at-runtime) –

+0

Yok her iki yanıtın da iPadMini – AlexWien

cevap

4

DPI 163 piksel inç başına (ppi) 'dir.

+0

ile uyumlu olduğunu düşünüyor. –

+4

İyi şanslar, yapamazsın. – borrrden

3

Dpi (veya daha doğru ppi) değerini doğrudan elde edemezsiniz, çünkü fiziksel ekranın milimetre (veya inç) sayısını bilmeniz gerekir.
Önce bir iPad mini olup olmadığını algılamalısınız ve daha sonra uygulamanızda her (henüz bilinen) aygıt için dpi değerini saklarsınız.

yazı Zamanla bu kod iPad mini'yi algılar: Yeni bir makine kimliği sonradan tanıtılacak olabilir çünkü gelecekteki sistemlere değil

#include <sys/utsname.h> 
NSString *machineName() 
{ 
    struct utsname systemInfo; 
    if (uname(&systemInfo) < 0) { 
     return nil; 
    } else { 
     return [NSString stringWithCString:systemInfo.machine 
           encoding:NSUTF8StringEncoding]; 
    } 
} 

// detects iPad mini by machine id 
+ (BOOL) isIpadMini { 

    NSString *machName = machineName(); 
    if (machName == nil) return NO; 

    BOOL isMini = NO; 
    if ( [machName isEqualToString:@"iPad2,5"] 
     || [machName isEqualToString:@"iPad2,6"] 
     || [machName isEqualToString:@"iPad2,7"]) 
    { 
     isMini = YES; 
    } 
    return isMini; 
} 

, ancak hiçbir gelece yöntem yoktur.
Bir iPad mini kullanım 163 dpi ise, aksi takdirde iPhone ve iPad için dpi'yi hesaplamak için, yukarıdaki bağlantıyı yorumda kullanın.