2013-05-24 14 views
15

Aygıtın 3,5 inç veya 4 inç olduğunu belirlemek için makro yazmaya çalışıyorum. Aşağıda benzer bir şey var.iOS Yazma Makro 3,5 inç veya 4 inç görüntüyü algılar

#define IOS_OLDER_THAN_6 ([ [ [ UIDevice currentDevice ] systemVersion ] floatValue ] < 6.0) 
    #define IOS_NEWER_OR_EQUAL_TO_6 ([ [ [ UIDevice currentDevice ] systemVersion ] floatValue ] >= 6.0) 

Birisi bana yardımcı olabilir.

cevap

56

Eğer feryat kullanarak iphopne 3.5 inç veya 4 inç algılayabilir edin: -

#define isiPhone5 ([[UIScreen mainScreen] bounds].size.height == 568)?TRUE:FALSE 

örneğin feryat yöntemi kullanarak kontrol edebilirsiniz: -

 if (isiPhone5) 
    { 
      // this is iphone 4 inch 
    } 
    else 
    { 

      //Iphone 3.5 inch 
    } 

bu bir göz atın Sizin için bağlantı, cihazın 3.5 inç veya 4 inç olduğunu belirlemek için Makro hakkında her şeyi biliyordu.

How to detect iPhone 5 (widescreen devices)?

+1

Bu makro yanlıştır. Kod için: max = IS_iPhone5? 5: 6; Bracer eklemeyi unuttuğun 1 baca aldım. Shorthand if-else formatı burada gereksizdir. Doğru kodu altında: #define isiPhone5 ([[UIScreen mainScreen] sınırları] .size.height == 568) – Szu

+1

bağlı olmayan yönelim iOS8 yönlendirilmiş? –

+0

@SjoerdPerfors haklısınız. Başka bir soruya verdiğim cevapta oryantasyona bir kontrol daha ekledim çünkü cevaplar artık bu soruya cevap vermiyor: http://stackoverflow.com/a/35208438/159758 – DonnaLea

5

böyle bir şey demek:

#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES) 
2

böyle iphone 5 (4 inç) olup olmadığını kontrol edebilirsiniz: iPhone 5'in ekranı 568 bir yüksekliğe sahiptir

.

if ([ [ UIScreen mainScreen ] bounds ].size.height == 568) 
İlgili konular