2008-11-21 9 views
1

Je développe une application iPhone. Une image simple est l'arrière-plan de la vue principale. J'ai défini un UIImageView en arrière-plan et j'ai défini une image en utilisant IB.Interface Builder ne peut pas afficher correctement les images 160dpi?

l'image est une image PNG 160dpi. Il ressemble à CRAP dans IB. Lorsque vous courez dans le simulateur, c'est ok, croustillant.

Comment suis-je supposé travailler et placer mes commandes précisément sur une telle image avec une résolution médiocre? Est-ce un bug?

Merci pour votre aide!

Répondre

2

IB n'est pas un outil pour concevoir une interface utilisateur, c'est un outil pour la mise en œuvre d'un. Il est conçu pour fonctionner correctement plutôt que de s'afficher correctement (ceci est plus important dans la conception d'interface utilisateur de bureau complexe que sur mobile, mais l'outil est le même pour les deux). Le meilleur conseil est peut-être de s'inspirer du monde de l'édition (où cela est une pratique courante pour les applications qui affichent de grandes quantités de graphiques haute résolution tels qu'Adobe InDesign) et de suivre les mesures exactes pour les contrôles - les coordonnées x, y et hauteur/largeur. Vous pouvez ensuite utiliser l'inspecteur pour positionner les commandes avec précision.

0

Je ne vois rien de tel quand je travaille avec des images dans IB. Peut-être qu'il y a quelque chose de spécial à propos de votre fichier PNG? Vous dites que c'est 160 dpi, ce qui n'est pas du tout pertinent. Plus important sont ce que sont ses diomensions de pixels, et comment ils se comparent à la taille de l'écran.

Peut-être que le UIImageView rencontre des problèmes de rendu de votre PNG, et utilise-t-il l'icône de prévisualisation à la place? Essayez une image différente ou essayez de redimensionner votre image au format 480 x 320 avec une couleur 32 bits.

2

En fait, le DPI n'est pas du tout pertinent.

Modifiez le DPI à 72 et l'image s'affichera correctement dans IB/Xcode.

0

Je me pose également des questions à ce sujet. Je ne pense pas que le DPI de l'image soit ce qui fait cela, parce que j'ai un projet où tout semble bien dans IB sur une machine, puis sur mon ordinateur portable, il affiche la façon dont l'OP décrit. Les dimensions de l'image sont les mêmes que celles de l'écran de l'iPhone et des dimensions de la vue (320x480), mais l'image affiche toutes les minuscules au lieu de remplir toutes les dimensions de l'UIImageView. Si je redimensionne pour remplir, l'image devient toute floue, à 320x480, même si je peux confirmer que ce sont les dimensions réelles de l'image ... Il agit comme si l'image elle-même est 320x480 d'espace vide avec une petite version de mon image est centrée à l'intérieur ... c'est très étrange. Comme je l'ai dit, c'est le même projet qui semble très bien dans IB sur une autre machine (et quand ils construisent, ils ont l'air normal dans le simulateur). Cela arrive aussi sur le macbook de mes amis.

Y a-t-il un réglage dans IB qui pourrait faire la différence?

EDIT: Devinez j'ai parlé trop tôt - je suis retourné à mon autre machine et a remarqué le même problème cette fois, et c'était en effet le ppp. Cela a dû être un changement dans l'une des mises à jour récentes de xcode/IB, parce que je n'ai jamais vu ce problème à l'origine, et les fichiers image sont exactement les mêmes ... étrange.