2011-11-10 15 views
5

Soy nuevo en el desarrollo de iPhone. Estoy creando una aplicación donde tomo una foto y debo presentarla en pantalla completa. Pero estoy teniendo dificultades para entender algunas cosas.iPhone - haciendo que la imagen quepa en la pantalla

Por ejemplo: imagine que el usuario selecciona una imagen que tiene una relación de aspecto diferente en comparación con la pantalla del iPad. Como estoy presentando la imagen a pantalla completa, no quiero mostrar ninguna barra negra a la izquierda/derecha o superior/inferior y me gustaría no distorsionar la imagen. ¿Cómo calculo el tamaño para mostrar la imagen? Quiero decir, ¿cómo puedo calcular el tamaño de la imagen, en función del tamaño de la pantalla y la orientación para que la imagen se muestre en la pantalla sin bordes, incluso si la imagen tiene que sangrar?

Lo siento por hacer una pregunta de novato.

¿Me puede indicar la dirección? Por favor, apúntame a algún código, ya que mi cerebro está nadando en teoría y un código me ayudará a entender eso. Gracias.

Respuesta

6

Puede usar UIImageView para mostrar la imagen (UIImage).

Puede administrar el comportamiento de la imagen mostrada (cosechado, un tamaño adaptado, centrado) cambiando la propiedad de contentModeUIImageView ejemplo:

Especifica cómo una vista ajusta su contenido cuando sus cambios de tamaño.

typedef enum { 
    UIViewContentModeScaleToFill, 
    UIViewContentModeScaleAspectFit, 
    UIViewContentModeScaleAspectFill, 
    UIViewContentModeRedraw, 
    UIViewContentModeCenter, 
    UIViewContentModeTop, 
    UIViewContentModeBottom, 
    UIViewContentModeLeft, 
    UIViewContentModeRight, 
    UIViewContentModeTopLeft, 
    UIViewContentModeTopRight, 
    UIViewContentModeBottomLeft, 
    UIViewContentModeBottomRight, 
} UIViewContentMode; 
+1

wow, ¡genial! ¡Pensé que sería más difícil que simplemente poner una bandera! ¡Asombroso! ¡¡¡¡¡Tu eres el hombre!!!!! –

+0

De nada – Nekto

2

acaba de poner su imagen en el UIImageView y establecido a su contentMode correcta

imageView.contentMode = UIViewContentModeScaleAspectFill; 

UIViewContentModeScaleAspectFill - llenará toda la pantalla por su imagen, pero la imagen no se distorsiona por proporciones de pantalla

Cuestiones relacionadas