Estoy tratando de dibujar algunas imágenes en miniatura en un tamaño fijo (100x100) usando UIImageView
. Establecí el tamaño de fotograma de mi vista de imagen en 100x100, y lo configuré contentMode
en UIViewContentModeScaleAspectFill
.
Según tengo entendido, esto debería hacer que la imagen se dibuje con el tamaño que configuré, y la imagen llenará el área de la imagen y recortará cualquier parte de la imagen que esté fuera del tamaño que configuré para la vista de imagen. Sin embargo, la imagen todavía se dibuja más grande o más pequeña que el tamaño de 100x100 que configuré para ella.
Si fijo el contentMode
que UIviewContentModeScaleToFill
, a continuación, la imagen se dibuja exactamente a 100x100, pero está distorsionada para encajar en esas dimensiones. ¿Alguna idea de por qué el relleno de aspecto no es un recorte como se esperaba?
Aquí está mi código:
_photoView = [[UIImageView alloc] initWithImage:photoImage];
_photoView.contentMode = UIViewContentModeScaleAspectFill;
[self addSubview:_photoView];
CGRect photoFrame = _photoView.frame;
photoFrame.size = CGSizeMake(100, 100);
_photoView.frame = photoFrame;
Para ilustrar mejor, aquí hay una captura de pantalla de lo que estoy viendo. Los cuadrados verdes son los que UIView
contienen el UIImageView
que estoy trabajando. Establecí su color de fondo en verde y el marco de la vista en 100x100. Como prueba, UIImageViews
tienen un tamaño de 50x50. Como puede ver, cuando se usa ...AspectFill
, las imágenes no tienen un tamaño de 50x50, y en algunos casos se compensan de donde me gustaría. Cuando se usan ...ScaleToFill
, tienen el tamaño correcto, pero la imagen está distorsionada.