leicht gemacht: Geräte und Auflösung auslesen

Hallo Zusammmen,

ich möchte ein wenig Quellcode teilen, mit welchem man abfragen kann auf welchem Gerät die App gerade läuft. Insbesondere für universelle Apps benötigt man aus meiner Sicht solche Methoden. Ich definiere mir zu diesem Zweck gerne Makros vor @implementation.

Abfragen auf iPad

#define IS_IPAD() (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

Abfrage nach iPhone 5 mit cocos2d

// für cocos2d
#define IS_IPHONE5() ([[CCDirector sharedDirector] winSize].width == 568 || [[CCDirector sharedDirector] winSize].height == 568)

// für andere Anwendungen
#define IS_IPHONE5() ([[UIScreen mainScreen] bounds].size.width == 568 || [[UIScreen mainScreen] bounds].size.height == 568 )

Abfrage nach iPhone

#define IS_IPHONE() (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)

Im Quellcode kann man nun über den definierten Bezeichner auf das Makro zugreifen.

    if (IS_IPHONE5()) {
        UIImage *background = [UIImage imageNamed:@"bgi5.png"];
    } else {
        UIImage *background = [UIImage imageNamed:@"bg.png"];
    }

Bis bald.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.