2013-07-24 1 views
0

J'ai recherché la documentation et les publications d'Apple concernant ce problème, mais je n'ai pas précisé comment je devrais y faire face, car la plupart des informations que j'ai trouvées sont à propos des storyboards et de la fonctionnalité de mise en page automatique. J'utilise des fichiers nib au lieu de storyboards, et en plus je dois supporter iOS 5+, donc je ne peux pas utiliser autolayout. J'utilise Xcode 4.6.3 et j'ai observé que, dans IB, en allant dans l'inspecteur Attributes> Simulated Metrics de la vue, vous pouvez choisir sa taille ("Retina 3.5 Full Screen", "Retina 4 Full Screen" ...). En ce moment, j'ai ce paramètre réglé sur "Aucun", dois-je avoir un fichier nib pour chaque taille d'écran et détecter par programme si l'appareil actuel est iPhone 5 ou un autre téléphone (similaire à ce que je fais pour iPad)? Si non, comment dois-je gérer ce support de l'iPhone 5, compte tenu de mes conditions particulières?A propos de la prise en charge de l'iPhone 5 lors de l'utilisation de fichiers nib et de la rétrocompatibilité

Merci!

+0

La façon dont je fais ceci est, je crée la vue pour iPhone4 et utilise la propriété Autoresize pour ajuster les contrôles pour iPhone5. – iphonic

Répondre

0

l'image 1.Add « [email protected] », avec cela, lors de lancement de l'application utilisera la taille de l'écran iPhone5, sinon, lors de lancement de l'application utilisera la taille de l'écran iPhone4S

2.Réglez votre commande Vue de ViewController autoresizingMask propriété

par exemple: self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

3.En votre Custom de subviews viewController comprennent UITableView ou UIScrollView, définissez autoresizingMask de cette propriété sous-vue

par exemple: self.aScrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

C'est tout ce dont vous avez besoin.

+0

Merci! Donc, devrais-je conserver les métriques simulées de la vue sur "Aucune" ou devrais-je les définir sur "Freeform"? – AppsDev

+0

Doit être none @ AppsDev –

+0

Vous l'avez configuré sur iPhone5, iPhone4 ou aucun. Si vous le réglez sur la taille de l'iPhone5, vous devez garder à l'esprit qu'il se rétrécira sur un iPhone4 lors de la mise en page de votre contenu. La même chose est vraie si vous définissez la taille de la vue IB sur iPhone4, sachez qu'elle s'étendra sur un 5. – random

Questions connexes