Aufgeblasen Bildansicht zu setzen, GalleryView ist nicht die richtige Größe

Ich versuche aufblasen, um eine Bildansicht, die Waage ein Drawable, dass ich die Anzeige in einem GalleryView. Mein code zum aufblasen der Blick scheint zu funktionieren gut, außer, dass die Attribute der Bildansicht nicht angewendet werden. Insbesondere die überhöhten Bildansicht nicht die Breite/Höhe, dass ich es über den android:layout-Parameter in XML.

Kann mir jemand zeigen was ich falsch mache?

Will ich legen Sie die Breite/Höhe des Bildes in der dp, so dass es die richtige Größe ist über mehrere Bildschirm-dpi und unterstützt Android 1.5+. Als Ergebnis kann ich nicht so etwas wie:

i.setLayoutParams(new Gallery.LayoutParams(150, 116)

Meine layout-definition ist:

<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="150dp" android:layout_height="116dp"
    android:background="@drawable/gallery_item_background"
    android:scaleType="fitXY" />
</ImageView>

Und dem snippet bin ich mit dem aufblasen, um die Bildansicht ist:

    public View getView(int position, View convertView, ViewGroup parent) {
        LayoutInflater inflater = getLayoutInflater();
        ImageView i = (ImageView) inflater.inflate(R.layout.gallery_item, null);
        i.setImageResource(mImageIds.get(position));
        i.setScaleType(ImageView.ScaleType.FIT_XY);

        return i;
    }
  • Für den moment habe ich gehackt eine Lösung mit DisplayMetrics.Dichte. float den = mDisplayMetrics.Dichte; convertView.setLayoutParams(neue Galerie.LayoutParams((int)(den * 150), (int)(den * 116)));
InformationsquelleAutor Richard | 2010-05-19
Schreibe einen Kommentar