如何在GridView中增加图像大小?

时间:2012-12-05 17:39:35

标签: android android-gridview

我有一个成功将15个图像放入GridView的数组。但是,当在网格中显示时,图像都非常小。我该如何改变它们的大小? 我试图将GridView.LayoutParams更改为(100,100),但似乎没有更改。

public View getView(int position, View convertView, ViewGroup parent) {
    ImageView imageView = new ImageView(mContext);
    imageView.setImageResource(mThumbIds[position]);
    imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
    imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
    return imageView;

2 个答案:

答案 0 :(得分:1)

您可以尝试根据模拟器设备的像素密度进行调整

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
switch(metrics.densityDpi){
     case DisplayMetrics.DENSITY_LOW:
                imageView.setLayoutParams(new GridView.LayoutParams(lowVal, lowVal));
                break;
     case DisplayMetrics.DENSITY_MEDIUM:
                imageView.setLayoutParams(new GridView.LayoutParams(medVal, medVal));
                break;
     case DisplayMetrics.DENSITY_HIGH:
                 imageView.setLayoutParams(new GridView.LayoutParams(highVal, highVal));
                 break;
}

答案 1 :(得分:0)

尝试改变这个:

imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);

对此:

imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);

您也可以将其设置为FIT_XY,但会引入失真。

希望有所帮助