10
votes

Appeler la version appropriée SetStatusBarHésdités par iOS version

Aujourd'hui, mon application approuvée, mais j'ai reçu des courriels d'utilisateurs dit qu'il crash. J'ai compris que

    if ([[[UIDevice currentDevice] systemVersion] floatValue]>=3.2)
        [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation: UIStatusBarAnimationSlide];
    else 
        [[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];


0 commentaires

4 Réponses :


0
votes

C'est probablement la meilleure chose à faire, autre que de limiter votre application à> = 3.2. Quoi qu'il en soit, Xcode doit vous donner un avertissement que le message SetStatusBarHenden Withanimation n'est pas pris en charge ("peut ne pas répondre à").


1 commentaires

Je n'ai pas obtenu l'avertissement parce que j'ai défini le iPhoneOn_Deployment_Target sur 3.0 pas le SDK de base. Sur la dernière version Xcode 3.2.3, je ne vois que le firmware 4.0 et 3.2 comme SDK BASE Toutes les autres sont manquantes.



23
votes

Je vous recommanderais d'utiliser le snipplet de code suivant au lieu de vérifier la version du système d'exploitation, mais de vérifier si un sélecteur est actuellement disponible. XXX


0 commentaires

1
votes

Malheureusement, si vous compilez avec le SDK 4.0 à l'aide du simulateur, les solutions ci-dessus vous attribueront un avertissement, qui par défaut est traité comme une erreur: xxx

afin que vous puissiez soit Définissez «Traitez des avertissements comme des erreurs» sur FALSE dans les paramètres de construction, ou vous pouvez utiliser des macros pour inclure sous condition du code correct. J'ai mon base SDK de base sur le périphérique 4.0, mon système d'exploitation cible est de 3,1 et utilisez cette macro: xxx

Notez que SSTATUTUSBARHDITDENDITE: Withanimation est venu disponible en 3.2.


0 commentaires

3
votes

Utilisez uniquement

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];


0 commentaires