在GridView中共享背景

时间:2012-05-19 07:43:45

标签: android gridview scroll imageview sharing

美好的一天,我的GridView有些问题。

 public View getView(int position, View convertView, ViewGroup parent) {
    ImageView imageView;


    if (convertView == null) {  // if it's not recycled, initialize some attributes
        imageView = new ImageView(mContext);
        imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setPadding(8, 8, 8, 8);
    } else {
        imageView = (ImageView) convertView;
    }


    imageView.setImageResource(mThumbIds[position]);
    if(LevelActivity.comp[position] == 1)
    { 
        imageView.setBackgroundResource(R.drawable.back_got);
        Bitmap btm;
        BitmapDrawable drawable = (BitmapDrawable) imageView.getDrawable();
        btm = drawable.getBitmap();
        btm = convertColorIntoBlackAndWhiteImage(btm);
    imageView.setImageBitmap(btm); 
    }

    return imageView;
}

这是我的ImageAdapter的代码,它在GridView中设置图像。并且如果元素的位置与值为1的数组中的位置相同,则将b& w图像设置为具有特殊背景而不是普通图像。一切正常,但是: 当我滚动我的GridView时,那些特殊的b& w图像开始将他们的背景“共享”到他们右边的图像。因此,在滚动之后,我会在每个特殊的b& w元素旁边获得具有特殊背景的普通图像。

希望你有个主意,谢谢。

有问题的图片:http://i.stack.imgur.com/Hbtwg.png

1 个答案:

答案 0 :(得分:0)

好的,我有一个答案。它实际上与random-items-in-GridView问题相似。所以我需要做的就是直接在画布上设置背景位图(在b& w函数内)。