0
這是我每次嘗試設置圖像視圖的LayoutParam時出現的錯誤。如何修復imageview ClassCaseException的LayoutParam?
10-02 03:27:53.081: ERROR/AndroidRuntime(1272): FATAL EXCEPTION: main
10-02 03:27:53.081: ERROR/AndroidRuntime(1272): java.lang.ClassCastException: android.widget.Gallery$LayoutParams
10-02 03:27:53.081: ERROR/AndroidRuntime(1272): at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:659)
10-02 03:27:53.081: ERROR/AndroidRuntime(1272): at android.widget.LinearLayout.onMeasure(LinearLayout.java:311)
10-02 03:27:53.081: ERROR/AndroidRuntime(1272): at android.view.View.measure(View.java:8313)
10-02 03:27:53.081: ERROR/AndroidRuntime(1272): at android.view.ViewGroup.measureChild(ViewGroup.java:3109)
這裏是我的佈局與ImageView的我試圖設置layoutParam對..
<?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">
<ImageView
android:id="@+id/imageView"
android:layout_width="50dip"
android:layout_height="50dip" android:src="@drawable/stub" android:scaleType="centerCrop"/>
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" android:layout_gravity="left|center_vertical" android:textSize="20dip" android:layout_marginLeft="10dip"/>
</LinearLayout>
,這裏是我的代碼膨脹的視圖,然後嘗試設置帕拉姆的,但我一直得到上面的錯誤。
public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;
if(convertView==null)
vi = inflater.inflate(R.layout.lazyitemt, null);
ImageView image=(ImageView)vi.findViewById(R.id.imageView);
image.setLayoutParams(new Gallery.LayoutParams(150, 150));
imageLoader.DisplayImage(data[position], activity, image);
return vi;
}
我不知道爲什麼我繼續得到這個。一切似乎都是正確的?我該如何解決這個問題?
這工作,但現在的圖像看起來拉伸和像素化非常糟糕。 – user856377
爲什麼你在佈局參數中設置150像素?真奇怪。如果您不希望圖像被拉伸,只需刪除上面的代碼,並在ImageView的xml佈局值中指定圖像的大小。 – kingori
嗯,我希望它是不同的尺寸取決於屏幕尺寸 – user856377