2011-01-10 10 views
10

Nella mia app ho un UIImageView di dimensioni 300 x 300 che visualizza molto bene le mie immagini. Le mie immagini sono tutte 600 x 600 o più grandi e UIImageView le ridimensiona semplicemente per me.Immagini retina/non retina in UIImageView

La mia domanda è questa: poiché queste immagini sono essenzialmente tutte le immagini retiniche (cioè il doppio della dimensione dei pixel richiesta) c'è qualche punto nel fare una retina e una versione non retina della stessa immagine? Questo non renderà la mia app più grande grazie ai file di immagine extra?

Cosa c'è che non va semplicemente lasciando che il dispositivo effettui il downscale delle immagini? Sono sicuro che c'è una buona risposta, quindi mi piacerebbe sapere di cosa si tratta!

Grazie per il vostro consiglio.

risposta

3

Per le nostre app utilizziamo una combinazione delle immagini @ 2x e facciamo ciò che hai suggerito, Ridimensionamento. Usiamo le immagini @ 2x per i pulsanti della barra, le icone, ecc. Ma per UIImageViews spesso usiamo lo scaling.

Ecco un articolo che suggerisce sia: http://mobile.tutsplus.com/tutorials/iphone/preparing-your-iphone-app-for-higher-resolutions/

ignorare la parte circa l'iPad non sostenere @ 2x (cioè le informazioni vecchio), ma l'articolo è ancora buono.

Ci può essere un calo di prestazioni per fare questo, ma per la maggior parte delle applicazioni direi che questo è trascurabile. I risparmi nella dimensione del file a volte rendono il ridimensionamento l'unica opzione.

6

Il ridimensionamento delle immagini è un sovraccarico non necessario. Basta fornire due versioni di esso.

+3

Inoltre, la qualità delle immagini ridotte non è buona come farlo da solo. – jowie

+0

Se stai usando solo poche immagini dovresti probabilmente fornire due immagini. Se, come nel mio caso, ho centinaia di immagini di grandi dimensioni, renderebbe le dimensioni della mia app troppo grandi. Scaling è una soluzione migliore per me. Non noto alcuna differenza di qualità con le immagini ridimensionate, ma sono tutte foto. Allo stesso modo, non vi è alcun ritardo nel visualizzarli. – JScarry