Question

Je suis étudiant pendant plusieurs mois Objective-c, donc je suis débutant.

J'ai une image (vertical gradient) 253px x 80px. Et je veux étirer la screen width.

Comment puis-je faire UIImageView * 1024( or 768) x 80px avec cette image?

Était-ce utile?

La solution

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];

Autres conseils

Un drapeau utilisé pour déterminer comment une vue expose son contenu lorsque son changement de bounds. @property (nonatomic) UIViewContentMode contentMode

UIViewContentModeScaleAspectFit

Vous pouvez également consulter la documentation sur la méthode de UIImage:

- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight

Cela vous permet de réaliser des images qui peuvent adapter un petit graphique à une variété de tailles et de rôles. @ Suggestion de Chugaister.

Vous devez utiliser:

Portrait mode

yourImage.frame = CGRectMake (x start, y start, x width, y width); 

Une solution serait d'appeler:

imageView.transform = CGAffineTransformMakeScale( 1.5, 1);

Ceci va étirer l'image par un facteur de 1,5 sur l'axe des x, tout en conservant l'axe Y dimensions.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top