ios - Cambiar el tamaño de la imagen para adaptarse a UIImageView
uiimageview set image swift (5)
Agregue a su UIViewController.m:
-(UIImage *)resizeImage:(UIImage *)image imageSize:(CGSize)size
{
UIGraphicsBeginImageContext(size);
[image drawInRect:CGRectMake(0,0,size.width,size.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
// here is the scaled image which has been changed to the size specified
UIGraphicsEndImageContext();
return newImage;
}
Utilizando:
UIImage *image = [UIImage imageNamed:@"image.png"];
CGSize size = CGSizeMake(50, 63); // set the width and height
UIImage *resizedImage = [self resizeImage:image imageSize:size];
Espero que ayude.
Soy muy nuevo en el objetivo c y me estoy orientando. Quiero hacer algo realmente simple, pero resulta ser todo un reto:
Estoy tratando de mostrar una imagen en un UIImageView
. La imagen que estoy mostrando es grande y quiero que se reduzca para que se ajuste al UIImageView
. Intenté configurar el modo de Vista AspectFit
, pero la imagen se muestra al tamaño original y se recorta por el UIImageView
. Mi código está abajo:
- (void)changeImages
{
UIImage* img11 = nil;
img11 = [UIImage imageWithContentsOfFile: [[NSBundle mainBundle] pathForResource:@"dog" ofType:@"jpeg"]];
u11.contentMode = UIViewContentModeScaleAspectFit;
u11.image = img11;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self changeImages];
}
¿Alguien puede arrojar algo de luz sobre esto por favor?
¡Gracias!
Hice lo siguiente y me ayudó a cambiar el modo a "relleno de aspecto" desde el valor predeterminado "Escala de relleno"
y agregue una línea de código de la siguiente manera (lo hice en una configuración de celda):
cell.photo.clipsToBounds = true
Hola, intentaría esto ...
- (void)changeImages
{
UIImage *img11 = [UIImage imageNamed@"dog.jpeg"];
u11.contentMode = UIViewContentModeScaleAspectFit;
u11.clipsToBounds = YES;
[u11 setImage:img11];
}
- (void)viewWillAppear:animated
{
[super viewWillAppear:animated];
[self changeImages];
}
Esto escalará la imagen (hacia arriba o hacia abajo) para que quepa dentro de imageView. Tener clipsToBounds no es necesario, pero impedirá que la imagen se muestre fuera del marco de su imageView.
HTH.
También puede configurar Vista: Modo para Ajustar Aspecto en el inspector de atributos en Interface Builder
CGSize size=CGSizeMake(79, 84);//set the width and height
UIGraphicsBeginImageContext(size);
[image drawInRect:CGRectMake(0,0,size.width,size.height)];
UIImage * newImage = UIGraphicsGetImageFromCurrentImageContext();
//here is the scaled image which has been changed to the size specified
UIGraphicsEndImageContext();
Esto es seguro y no te olvides de importar QuartzCore FrameWork ...
Tener una codificación feliz (^ _ ^) ...