170 votes

ce qui ' la différence entre ImageView.ScaleType.CENTER_INSIDE et FIT_CENTER ?

Je ne peux pas dire la différence entre ImageView.ScaleType.CENTER_INSIDE et ImageView.ScaleType. FIT_CENTER.

ImageView.ScaleType.CENTER_INSIDE

L'échelle de l'image de manière uniforme (maintenir le format de l'image), de sorte que les deux dimensions (largeur et hauteur) de l'image sera égale ou inférieure à la dimension correspondante de la vue (sans rembourrage).

ImageView.ScaleType. FIT_CENTER

Calculer une échelle qui permettra de maintenir l'original src ratio d'aspect, mais veillera également à ce que la src s'adapte entièrement à l'intérieur de l'heure d'été. Au moins un axe (X ou Y) s'adaptent exactement. Le résultat est centré à l'intérieur de l'heure d'été.

Quelqu'un peut-il éclairer la différence entre les deux?

280voto

Pang Points 2345

Voici une illustration de la différence entre CENTER_INSIDE et FIT_CENTER.


Image utilisée (100 × 100):

Android_Robot_100.png


Petit affichage de l'image (75 × 50):

CENTER_INSIDE:

CENTER_INSIDE for small image view

FIT_CENTER:

FIT_CENTER for small image view

Les deux CENTER_INSIDE et FIT_CENTER rétrécir l'image.


Grand affichage de l'image (300 × 200):

CENTER_INSIDE:

CENTER_INSIDE for large image view

FIT_CENTER:

FIT_CENTER for large image view

CENTER_INSIDE ne pas agrandir l'image, FIT_CENTER .


Le robot Android est reproduit ou modifié à partir de travaux créés et partagés par Google et utilisé conformément aux conditions décrites dans la licence Creative Commons 3.0 Attribution License.

163voto

BlackHatSamurai Points 6211

FIT_CENTER va assurez-vous que la source s'adapte complètement à l'intérieur du conteneur, et l'horizontale ou à la verticale de l'axe va être exact.

CENTER_INSIDE va du centre de l'image à l'intérieur du conteneur, plutôt que de faire les bords correspondre exactement.

donc, si vous avez eu une boîte carrée qui était de 10" x 10" et une image qui était de 8"x8", le CENTER_INSIDE serait directement dans le milieu de la boîte avec 2" entre la source et le conteneur de destination.

Avec le FIT_CENTER, la même image dans l'exemple ci-dessus, devrait correspondre à l'ensemble du conteneur, parce que les côtés sont égaux, et un axe va correspondre à la destination. Avec FIT_CENTER, si vous avez eu une boîte qui était de 5" x 10", et une image qui était de 5" x 7", l'image serait proportionnellement à l'échelle, donc l'un des axes de la serait bon, mais ce serait encore centre de l'image à l'intérieur de la destination.

Ils sont similaires, mais l'un est fait de telle sorte que la source de remplissage de la destination, autant que possible, tandis que l'autre, simplement centres de l'image à l'intérieur de la destination.

Espérons que précise un peu

62voto

Zarokka Points 486

Ils sont les mêmes si l’image est plus grand que le conteneur. Si l’image est plus petite puis le conteneur CENTER_INSIDE pas dimensionnera l’image vers le haut tandis que FIT_CENTER.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X