Je voudrais demander comment mettre à l'échelle une image pour remplir une UIImageView tout en conservant son rapport hauteur / largeur, tout comme le type d'échelle centerCrop d'Android ImageView fait.
3 Réponses :
Vous pouvez définir la vue d'image contentMode sur UIView.ContentMode.scaleAspectFill . C'est l'équivalent d'Android scaleType centerCrop
Vous devez utiliser .scaleAspectFill . Dans swift 4.2:
myImageView.contentMode = .scaleAspectFill myImageView.clipsToBounds = true // If you want to crop
.scaleAspectFill étendra l'image pour qu'elle tienne dans UIImageView. Si vous souhaitez conserver le rapport hauteur / largeur, vous devez utiliser .scaleAspectFit. Le meilleur moyen est d'essayer les deux solutions dans le code pour voir le résultat final. Si cela vous aide, merci de voter pour mon message. Je vous remercie!
Oui, vous avez raison @Rob. Je mettrai à jour ma réponse. Je vous remercie.
Voici les principaux modes de contenu de UIImageView:
Ce sont les constantes Objective-C, mais OP posait des questions sur Swift.
il peut écrire comme imageView.contentMode = .scaleAspectFill & s'il veut définir l'image comme sa qualité de pixels .scaleAspectFit sera parfait.
stackoverflow.com/questions/14134035/… < / a>
Définissez
imageView.contentModesur.scaleAspectFill(ou.scaleAspectFit).@Rob
scaleAspectFitéquivaut à AndroidcenterInside@iffatfatima - Oui, je voulais juste partager les deux aspects préservant la mise à l'échelle de
contentMode.