Как Strech Uiimageview (iPhone dev.)?
-
26-10-2019 - |
Вопрос
Я изучаю Objective-C в течение нескольких месяцев, поэтому я новичок.
У меня есть изображение (vertical gradient)
253px x 80px
. Анкет И я хочу растянуть его на screen width
.
Как я могу сделать UIImageView * 1024( or 768) x 80px
С этим изображением?
Решение
CGRect myImageRect = CGRectMake(0.0f, 0.0f, self.view.frame.size.width, 80.0f);
UIImageView *myImage = [[UIImageView alloc] initWithFrame:myImageRect];
[myImage setImage:[UIImage imageNamed:@"gradient-253x80.png"]];
[self.view addSubview:myImage];
Другие советы
Флаг, используемый для определения того, как представление излагает его содержание при изменении границ. @property (nonatomic) uiviewcontentmode contentmode
Uiviewcontentmodescaleaspectfit
Вы также можете найти документацию по методу Uiimage:
- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight
Это позволяет создавать изображения, которые могут адаптировать одну небольшую графику к различным размерам и ролям. @Предложение Чугайстера.
Вы должны использовать:
Портретный режим
yourImage.frame = CGRectMake (x start, y start, x width, y width);
Одним из решений было бы позвонить:
imageView.transform = CGAffineTransformMakeScale( 1.5, 1);
Это увеличит изображение на 1,5 на оси x, но сохранит размеры оси Y.