Android: Comment faire pour étirer une image à la largeur de l'écran tout en conservant les proportions?

Je veux télécharger une image (de taille inconnue, mais qui est toujours à peu près carrée) et de l'afficher afin qu'elle remplisse l'écran à l'horizontale, et s'étend verticalement à maintenir le ratio d'aspect de l'image, sur la taille de l'écran. Voici ma (non-travail) du code. Il s'étend sur l'image horizontalement mais pas verticalement, de sorte qu'il est écrasé...

ImageView mainImageView = new ImageView(context);
    mainImageView.setImageBitmap(mainImage); //downloaded from server
    mainImageView.setScaleType(ScaleType.FIT_XY);
    //mainImageView.setAdjustViewBounds(true); 
    //with this line enabled, just scales image down
    addView(mainImageView,new LinearLayout.LayoutParams( 
            LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
  • faire tous les appareils Android ont exactement le même rapport largeur/hauteur? Si non, il est tout simplement impossible à l'échelle d'une image adaptée à l'ensemble de la largeur ou de la hauteur, tout en préservant le rapport original...
  • Non, je ne veux pas l'image pour remplir l'écran, juste à l'échelle de la largeur de l'écran, je ne m'inquiète pas combien de l'écran, l'image prend à la verticale, aussi longtemps que l'image est dans les proportions correctes.
  • La même question, la bonne réponse: stackoverflow.com/questions/4677269/...
  • n' 'adjustViewBounds" pas de travail?
InformationsquelleAutor fredley | 2010-06-07