Ответ 1
Попробуйте использовать следующий код.
MyImageview.contentMode = UIViewContentModeScaleAspectFill;
MyImageview.clipsToBounds = YES;
Я пытаюсь создать окно, которое появляется в моем приложении xcode, которое просто отображает изображение такого размера. У меня есть следующие
UIImageView *newView=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"beach.jpg"]];
но это создает полноразмерный образ и просто показывает его. Как я могу показать только 100w на 100h при 50 и 200? Использовать ли CGRect?
Кроме того, могу ли я сделать так, чтобы щелкнуть по нему, чтобы оно исчезло?
изменить # 1 Я не хочу изменять размер изображения - скорее всего, вытащите 100 квадратов пикселей и поместите их в кадр.
Попробуйте использовать следующий код.
MyImageview.contentMode = UIViewContentModeScaleAspectFill;
MyImageview.clipsToBounds = YES;
Вы можете обрезать изображение с помощью кода ниже:
CGRect cropRegion = CGRectMake(50, 200, 100, 100);
UIImage *image = [UIImage imageNamed:@"beach.jpg"];
CGImageRef subImage = CGImageCreateWithImageInRect(image.CGImage, cropRegion);
UIImage *croppedImage = [UIImage imageWithCGImage:subImage];
UIImageView *newView = [[UIImageView alloc] initWithImage:croppedImage];
Вы также можете добиться эффекта обрезки, проверив опцию Clip Subviews в раскадровке.