8
votes

Comportement de simulateur iOS bizarre "Retina"

J'ai mis à jour Lion au lion de montagne la semaine dernière et depuis lors, ce bogue vraiment étrange sur le simulateur IOS. La première image montre le simulateur régulier et la seconde indique le simulateur "Retina". Est-ce que quelqu'un sait comment réparer ceci? J'ai essayé de supprimer xcode et de réinstaller, mais n'avait pas de chance.

Simulateur normal:

simulateur normal

Simulateur de rétine:

simulateur de rétine

Merci pour une aide à l'avance!

Edit: Ce n'est pas le simulateur iPad. Voici une capture d'écran du menu "Périphériques".

onglet Périphériques


11 commentaires

Pas bizarre, c'est votre application iPhone en cours d'exécution sur le simulateur iPad.


Essayez de créer un nouveau projet Xcode. Exécutez-le sur le simulateur de rétine. Plus, mise à jour vers Xcode 4.4 si vous ne l'avez pas fait. En fin de compte, j'ai ri si fort à la photo, ressemble à un bug :)


Intéressant. Essayez d'aller au menu Simulator IOS et sélectionnez "Réinitialiser le contenu et les paramètres". Peut-être que ça va aider


J'ai xcode 4.4, donc cela ne peut pas être ça. Et "réinitialiser le contenu et les paramètres" ne fonctionne pas non plus. Si ennuyant!


Étant donné que la question n'est pas courante, elle pourrait être très localisée à votre environnement spécifique. Avez-vous essayé de réinstaller Xcode 4.4 depuis la mise à jour au lion de montagne? Sinon, essayez cela.


Qu'est-ce que les paramètres -> Général - à propos de la montrage dans Simulator? iPad ou iPhone? Quelle est la version SDK iOS?


Je suis désolé que cela vous arrive, mais je suis content que cela soit arrivé à quelqu'un. Maintenant je sais que ce n'est pas juste moi! Je pense que c'est une sorte de bogue en 4.4.


Vous feriez mieux de passer à la ligne de commande: P


Essayez de réinitialiser le contenu et les paramètres du simulateur ou supprimez les données dérivées du projet dans l'organisateur Xcode


Avez-vous une rétine MacBook Pro?


Est-ce juste votre application ou un tremplin sur le simulateur aussi?


3 Réponses :


-3
votes

Ceci est iPad Simulator. Changez-le sur iPhone.

matériel-> périphérique


0 commentaires

1
votes

J'avais le même problème, essayiez de changer la résolution d'affichage sur votre Mac. J'utilise une rétine Mac, alors dû jouer un peu.

Xcode vous a donné un simulateur différent pour la rétine, mais on dirait qu'ils ont été construits dans la logique pour avoir une résolution plus élevée dans un simulateur.


1 commentaires

J'ai récemment connu ce problème et peut confirmer dans mon cas n'était pas lié à mon code de projet. Selon la résolution d'écran, vous avez votre simulateur, il servira une interface utilisateur différente. C'EST À DIRE. 1. Dans mon écran Thunderbolt, il a montré une interface frontière comme iPad comme iPhone (rétine 4 pouces). 2. Dans mon écran de rétine MacBook Pro, le même réglage affichera une interface iPhone 5ituelle. Remarque: je devais modifier la version de l'appareil vers un autre pour voir le changement affecté dans l'autre affichage.



0
votes

Le symptôme le plus important ici est que votre interface utilisateur occupe exactement la quantité d'espace à laquelle vous vous attendriez s'il appartenait à un iPhone de résolution standard. Et l'autre symptôme important est la façon dont vos uilabels ont été lavés - c'est souvent un signe que l'Uilabel ne reçoit pas la bonne échelle pour l'écran, surtout si rasterizing.

Lorsque vous initialisez votre application dans votre délégué de l'application (DidfinishlaunchingwithOptions) Vérifiez si vous avez du mal à codé sur les limites de l'UIWindow ou de la racine racine pour votre UIWindow de la résolution de l'iPhone standard (c'est-à-dire 320x480). Ceux-ci devraient être définis à l'aide de [[UISREEN MAINSCREEN] limites] au lieu d'être codé dur aux points réels. En effet, vous devriez rechercher n'importe quel endroit de votre application où vous avez codé dur les dimensions de l'écran - effectuez une recherche sur la chaîne "320" et "480" - ce sont des chiffres qui ne doivent jamais apparaître dans votre code.

L'autre possibilité est que vous avez défini certaines de vos points de vue sur Rasterize (couche.shoulasterize = YES), mais vous n'avez pas défini de couche.RasterizationCale sur l'échelle de l'écran principal (c.-à-d. Échelle [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[...] Échelle], qui sera 2,0 dans le contexte de la rétine). J'ai vu le même genre d'uilabel boueux quand je n'ai pas réglé correctement la balance.

Je reconnais que, puisque votre message dit que ce changement n'est survenu que depuis votre mise à jour du système d'exploitation, ce ne sont probablement pas les problèmes, mais juste pour être extra-cerfs, je les vérifierais.

mise à jour : sur la deuxième pensée, codage dur Ces limites, quelle mauvaise pratique ne pouvaient pas causer ce problème, car ce sont les limites logiques correctes pour iPhone et les échelles du système d'exploitation pour vous. Donc, entre ces deux suggestions, plus il est probable que certaines propriétés liées à l'échelle sont correctement définies. Une autre possibilité est que vous utilisiez le contenu de l'UIView ContentCalfactor et la définit de manière incorrecte.


0 commentaires