4
votes

Qu'est-ce qui équivaut au type de cadrage central d'Android ImageView pour iOS UIImageView?

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.


4 commentaires

stackoverflow.com/questions/14134035/… < / a>


Définissez imageView.contentMode sur .scaleAspectFill (ou .scaleAspectFit ).


@Rob scaleAspectFit équivaut à Android centerInside


@iffatfatima - Oui, je voulais juste partager les deux aspects préservant la mise à l'échelle de contentMode .


3 Réponses :


0
votes

Vous pouvez définir la vue d'image contentMode sur UIView.ContentMode.scaleAspectFill . C'est l'équivalent d'Android scaleType centerCrop


0 commentaires

8
votes

Vous devez utiliser .scaleAspectFill . Dans swift 4.2:

myImageView.contentMode = .scaleAspectFill
myImageView.clipsToBounds = true // If you want to crop


2 commentaires

.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.



0
votes

Voici les principaux modes de contenu de UIImageView:

  • UIViewContentModeScaleToFill
  • UIViewContentModeScaleAspectFit
  • UIViewContentModeScaleAspectFill


2 commentaires

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.