这是由于gerview 的 Recycler 原理。详情参考以下link
http://www.cnblogs.com/xiaowenji/articles/1900579.html==============================================
publicView getView(int position, View convertView, ViewGroup parent){
ViewHolder holder;
if(convertView ==null){
convertView = mInflater.inflate(R.layout.list_item_icon_text, null);
holder =new ViewHolder();
holder.c=(TextView) convertView.findViewById(R.id.check);
convertView.setTag(holder);
}else{
holder =(ViewHolder) convertView.getTag();
}
c.setcheck(false)
return convertView;
}
staticclass ViewHolder {
Checkbox c;
}
===============
大体的代码思路是这样,有bug的话自己修修就行了。
有任何错误 仅供参考
http://www.cnblogs.com/xiaowenji/articles/1900579.html==============================================
publicView getView(int position, View convertView, ViewGroup parent){
ViewHolder holder;
if(convertView ==null){
convertView = mInflater.inflate(R.layout.list_item_icon_text, null);
holder =new ViewHolder();
holder.c=(TextView) convertView.findViewById(R.id.check);
convertView.setTag(holder);
}else{
holder =(ViewHolder) convertView.getTag();
}
c.setcheck(false)
return convertView;
}
staticclass ViewHolder {
Checkbox c;
}
===============
大体的代码思路是这样,有bug的话自己修修就行了。
有任何错误 仅供参考
解决方案 »
- cocos2d-android在创建CCGLSurfaceView的时候报找不到类异常
- 求助:安卓模拟方向键和按钮键时遇到的问题
- Android开发中WebView如何提前加载所需的js及css文件
- 谁在做OpenCV向Android移植的大侠吗?期待您的到来
- 怎么联系android版块的版主呀?
- TextView如何显示带<image>标签的文本?
- 如何实现搜狐新闻客户端actionbar样式
- 在android应用层上,多个app之间如何实现主题、样式和图片等资源?
- android程序名改不了
- 每次在新建android项目时都会出错,并且无法生成MainActivity文件
- 求指教:关于将手机里的图片以及文字信息发送到网站上?
- 求指点啊,直接蒙掉!
if (posion ==0) //这是一个简单的逻辑判断,复杂的你自己把这判断逻辑改一下就行了
{
c.setcheck(true);
}
else{
c.setcheck(fasle);
}当然这样写有点绝对 ,具体的哪个checkbox 需要设置成true和false需要根据你的逻辑来判断了。我不知道你要的具体要求怎么样。
if (select.contain(new integer(postion))) //select 是一个集合,里面放着所有选中checkbox 的位置
{
c.setcheck(true);
}
else
{
c.setcheck(fasle);
}
方法很多 你也可以自己考虑下
if (posion ==0)
你在别的项中修改别的项是办不到的 c.setcheck(fasle);更不行了控件ID都是一个。在listview中设置了又要重新读取的楼主我遇到了这个问题,我的解决方案是。数据存入数据库添加一条数据int int =1就是c.setcheck(fasle)int=2就是c.setcheck(true);
每次选checkbox的时候你给他个事件重新读取数据库就可以了,这个绝对可以。。
publicView getView(int position, View convertView, ViewGroup parent){
ViewHolder holder;
convertView = mInflater.inflate(R.layout.list_item_icon_text, null);
holder =new ViewHolder();
holder.c=(TextView) convertView.findViewById(R.id.check);
c.setOnCheckedChangeListener(new OnCheckedChangeListener(){ public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if(isChecked){
buttonView.setChecked(false);
}else{
buttonView.setChecked(true);
}
}
});
convertView.setTag(holder);
return convertView;
}
staticclass ViewHolder {
Checkbox c;
}