我想膨脹一個ImageView,縮放一個Drawable,我可以在GalleryView中顯示。我的代碼膨脹視圖似乎工作正常,除了ImageView的屬性沒有應用。具體來說,膨脹的ImageView沒有通過XML中的android:layout params爲其設置的寬度/高度。膨脹ImageView放在GalleryView是不正確的大小
有人可以告訴我我做錯了什麼嗎?
我想在dp中設置圖像的寬度/高度,以便跨多個屏幕dpis支持Android 1.5+以上的正確尺寸。因此,我不能使用類似:
i.setLayoutParams(new Gallery.LayoutParams(150, 116)
我的佈局定義是:
<?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>
,我使用吹大的ImageView的片段是:
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;
}
目前我使用DisplayMetrics.density攻擊了一個解決方案。 float den = mDisplayMetrics.density; convertView.setLayoutParams(new Gallery.LayoutParams((int)(den * 150),(int)(den * 116))); – Richard 2010-05-20 21:13:11