Réglage de l'ImageView ScaleType “centre” ne fonctionne pas comme prévu

J'ai le schéma suivant pour mon ImageView:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:descendantFocusability="blocksDescendants">
    <ImageView
        android:id="@+id/imageview_icon"
        android:layout_width="48dp"
        android:layout_height="48dp"
        android:scaleType="fitCenter" />
    (...)
</LinearLayout>

Ceux 48dp égal à 36px, 48 px et 72px dans ldpi, mdpi et hdpi respectivement. Toutes les images qui seront utilisées dans ce ImageView sont essentiellement des icônes et j'ai trouvé sur le web ce que je veux pour mon application (licence libre). Mais malheureusement, il ne vient pas avec des images plus grandes que 48 px et en utilisant différentes images est hors de question. J'ai donc besoin d'une nouvelle solution...

Pour l'instant j'ai 36px et 48 px images dans la ldpi et mdpi dossiers, respectivement. Mais je vais avoir des ennuis avec hdpi. Ce que je veux pour les appareils fonctionnant sur hdpi est pour eux d'utiliser les mdpi image (plus disponible) et l'utiliser comme il est, sans mise à l'échelle. Fondamentalement, la ImageView pour hdpi est 72px, donc je veux la 48 px image à l'intérieur de la 72px, dans le centre, sans mise à l'échelle. Pour cela, j'ai simplement essayé de changer scaleType dans le ImageView ci-dessus à juste center, mais l'image est mis à l'échelle de toute façon.

Mon ultime question ici est, quelle est la bonne manière de résoudre le problème décrit ci-dessus? Comment puis-je avoir ldpi et mdpi images utilisées dans leurs densités, mais ont des appareils fonctionnant hdpi ramasser le plus gros de l'image (ce qui est le mdpi) et d'empêcher toute mise à l'échelle, juste à côté de l'image dans le centre de la ImageView?

EDIT:
J'ai répondu à cette question moi-même, mais il pourrait être la réponse d'autres personnes venant ici sont à la recherche pour. Mais je dois donner un aperçu sur ce qui se passe réellement et le problème sous-jacent. Veuillez prendre un coup d'oeil et de fournir une solution de contournement/corriger si vous le pouvez. J'ose vous 🙂

avez-vous essayé centerInside ???
Oui, essayé la plupart des possibilités logiques. Rien n'y fait 🙁
Puis-je vous demander pourquoi vous en avez besoin? Généralement, les gens veulent que sur un écran normal, cinq 64dp icônes doivent toujours occuper toute la largeur de l'écran (qui est 320dp), doit toujours le même aspect quel que soit l'appareil de résolution, y compris les icônes côtés touch (avec en option indépendante de l'appareil de remplissage)
Je ne comprends pas votre question...
J'ai été en utilisant une bibliothèque pour faire débrochable(pour rendre le fond d'une tour) pour mon projet de travail, mais comme je l'ai changé pour ImageView il a parfaitement fonctionné!

OriginalL'auteur Ricardo Amaral | 2011-10-18