2010-11-30 9 views
0

J'ai compris que iOS 4.2 est aussi pour iPad. Le code ci-dessous est le modèle standard que nous utilisons tous pour identifier l'appareil. comment cela va changer pour l'iPad 4.2. Dois-je changer le code pour considérer le type d'appareil plutôt que la version?identifiant l'appareil pour iPad iOS 4.2

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200 
    CGRect frame = [[UIScreen mainScreen] bounds]; 
    self.view.frame = frame; 
#else 
    CGRect frame = [self.view bounds]; 
#endif 

Répondre

5

Une meilleure façon serait [[UIDevice currentDevice] userInterfaceIdiom]

Vérifiez d'abord que le currentDevice répond à ce sélecteur. Si ce n'est pas le cas, alors c'est un iPhone/iPod fonctionnant sous iOS 3.1.x ou plus tôt.

S'il répond à ce sélecteur, vous pouvez vérifier le résultat pour UIUserInterfaceIdiomPhone ou UIUserInterfaceIdiomPad.

0

version de l'appareil de contrôle et le code en conséquence

float version = [[[UIDevice currentDevice] systemVersion] floatValue]; 
    if (version == 4.2) 
    { 
     CGRect frame = [[UIScreen mainScreen] bounds]; 
    self.view.frame = frame; 

    } 
else 
    self.view.frame = frame; 

Utilisez ce code, il peut vous aider.

2

Vous pouvez essayer aussi:

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200 

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
{ 
    // type you code for iPad 
} else { 
    // type you code for iPhone 
} 

#endif 
Questions connexes