android gridview选中的item背景色变色

Pre

在gridview中,选中的区块变色功能的实现。

之前的效果

选中以后


同样,取消选择以后,红色背景又变回白色。

需要在原有工程上修改的地方

在重写的baseadapter里getview里面加上

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

              。。。。。。。。。
              。。。。。。。。。
            //这里的getIsSelected返回的是记录checkbox选中状态的数组
        if(getIsSelected().get(position)){
            convertView.setBackgroundColor(Color.RED);
        }else{
            convertView.setBackgroundColor(Color.WHITE);

        }

        return convertView;
    }

此处的color也可以改成自定义的背景,调用setbackground方法

gridviewactivity里,setOnItemClickListener中记得一定要notifydatasetchanged

listview.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                。。。。。。。。。。。。
                mAdapter.notifyDataSetChanged();
                。。。。。。。。

            }

        });

不然的话,选中是没有效果的。

UPDATE 15. 三月 2016

代码从原来的项目里抽出来整理了下,push到github上去了。
原来截图里的顶部文字“已选中XX项”先不整理了。很简单的功能,可以自己实现下。下次再push的话,会加上gridview 中使用textedit。
github地址
有些地区上不去github。同步到了国内的git平台:
开源中国地址
coding.net地址

文章若未注明转载皆为原创,如需转载请注明出处FindSpace博客及文章链接,文章markdown格式源码现已开放,欢迎转载。文章源码地址:


分享到:

Find

新浪微博(FindSpace博客)QQ群:不安分的Coder(375670127) 不安分的Coder

You may also like...