Je ne peux pas faire la différence entre ImageView.ScaleType.CENTER_INSIDE
et ImageView.ScaleType.FIT_CENTER
.
CENTER_INSIDE
Redimensionnez l'image uniformément (conservez le rapport hauteur/largeur de l'image) de sorte que les deux dimensions (largeur et hauteur) de l'image soient égales ou inférieures à la dimension correspondante de la vue (moins le remplissage).
FIT_CENTER
Calculez une échelle qui conservera le rapport d’aspect d’origine src, mais garantira également que src s’intègre entièrement dans dst. Au moins un axe (X ou Y) conviendra parfaitement. Le résultat est centré à l'intérieur de dst.
Quelqu'un peut-il éclairer la différence entre les deux?
FIT_CENTER s'assurera que la source s'adapte complètement à l'intérieur du conteneur, et que l'axe horizontal ou vertical va être exact.
CENTER_INSIDE va centrer l'image à l'intérieur du conteneur, plutôt que de faire correspondre les bords exactement.
ainsi, si vous aviez une boîte carrée de 10 x 10 po et une image de 8 x 8 po, le paramètre CENTER_INSIDE se trouverait directement au centre de la boîte, avec un espace de 2 po entre le conteneur source et le conteneur de destination.
Avec FIT_CENTER, la même image de l'exemple ci-dessus convient au conteneur entier, car les côtés sont égaux et qu'un axe correspond à la destination. Avec FIT_CENTER, si vous aviez une boîte de 5 "x 10" et une image de 5 "x 7", l’image serait mise à l’échelle proportionnelle, de sorte que l’un des axes s’ajusterait, mais resterait centré dans l’image. destination.
Ils sont similaires, mais l’un est conçu de manière à ce que la source remplisse le plus possible la destination, tandis que l’autre centre uniquement l’image dans la destination.
J'espère que ça clarifie un peu
Voici une illustration graphique de la différence entre CENTER_INSIDE
et FIT_CENTER
.
Tous les deux CENTER_INSIDE
et FIT_CENTER
réduire l'image.
CENTER_INSIDE
n’agrandit pas l’image, FIT_CENTER
Est-ce que.
Le robot Android est reproduit ou modifié à partir d'un travail créé et partagé par Google et utilisé selon les conditions décrites dans la licence d'attribution Creative Commons 3.0.
Ils sont identiques si l'image est plus grande que le conteneur. Si l'image est plus petite, le conteneur CENTER_INSIDE n'échelonnera PAS l'image, mais FIT_CENTER le fera.