大佬教程收集整理的这篇文章主要介绍了当我滚动浏览时,列表中的复选框会随机选中/取消选中。 android 2.3,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
cb.setoncheckedchangelistener(new Oncheckedchangelistener(){
@OverrIDe
public voID oncheckedChanged(Compoundbutton buttonVIEw,Boolean ischecked) {
itemchecked[index]=ischecked;
}
});
cb.setchecked(itemchecked[index]);
@H_197_5@
能否请您发布一些代码片段并进行详细说明。自从过去两个星期以来,我已经厌倦了对此的搜索。
解决方法
public View getChildView(final int groupPosition,final int childPosition,Boolean isLastChild,View convertView,ViewGroup parent) {
final ViewHolder holder;
//if (convertView == null) {
holder = new ViewHolder();
convertView = mInflater.inflate(
R.layout.expandableinner_custom_row,null);
holder.textView = (TextView) convertView
.findViewById(R.id.textView);
holder.checkBox = (checkBoX) convertView
.findViewById(R.id.checkBoX);
String str = getChild(groupPosition,childPosition).toString();
holder.textView.setText(str);
Boolean[] boolArr = SMSActivity.maintaingState.get(String
.valueOf(groupPosition));
Log.i(\"BOOLARRAYSIZE \",String.valueOf(boolArr.length));
Log.i(\"Boolean\",String.valueOf(boolArr[childPosition] + \"GrpPosition: \"
+ groupPosition + \"ChildPosition: \"
+ childPosition));
if (boolArr[childPosition]) {
holder.checkBox.setchecked(true);
} else {
holder.checkBox.setchecked(false);
}
holder.checkBox
.setOncheckedChangeListener(new OncheckedChangeListener() {
@Override
public void oncheckedChanged(
CompoundButton buttonView,Boolean ischecked) {
// TODO Auto-generated method stub
Boolean[] boolArr = SMSActivity.maintaingState
.get(String.valueOf(groupPosition));
boolArr[childPosition] = ischecked;// (object)
Log.i(\"grpPosition\",String.valueOf(childPosition));
Log.i(\"childPosition\",String.valueOf(groupPosition));
SMSActivity.maintaingState.remove(String
.valueOf(groupPosition));
SMSActivity.maintaingState.put(
String.valueOf(groupPosition),boolArr);
Log.i(\"Boolean\",String
.valueOf(boolArr[childPosition]
+ \" GrpPosition: \"
+ groupPosition
+ \"ChildPosition: \"
+ childPosition));
}
});
convertView.setTag(holder);
return convertView;
}
@H_197_5@,在getview()方法中使用settag(position)设置每个复选框的位置,同时单击每个复选框,通过(Integer)buttonView.getTag()获取位置。我认为以下代码将解决您的问题。
public View getView(int position,ViewGroup parent)
{
holder=new ViewHolder();
convertView=lInflater.inflate(R.layout.extraevents,null);
holder.txttitle=(TextView)convertView.findViewById(R.id.eventtitlE);
holder.txtLOCATIOn=(TextView)convertView.findViewById(R.id.eventLoc);
holder.ChkEachBox=(checkBoX)convertView.findViewById(R.id.checkBoxSELEcted);
holder.ChkEachBox.setClickable(true);
holder.ChkEachBox.setFocusable(false);
holder.ChkEachBox.setTag(position);
holder.ChkEachBox.setOncheckedChangeListener(this);
EventItems cart=eventList.get(position);
holder.txttitle.setText(cart.titlE);
holder.txtLOCATIOn.setText(cart.LOCATIOn);
if(cart.SELEcted==truE)
{
holder.ChkEachBox.setchecked(true);
}
else
{
holder.ChkEachBox.setchecked(false);
}
return convertView;
}
public void oncheckedChanged(CompoundButton buttonView,Boolean ischecked)
{
EventItems cart=eventList.get((Integer)buttonView.getTag());
if(buttonView.ischecked())
{
cart.SELEcted = true;
}
else
{
cart.SELEcted = false;
}
}
@H_197_5@
大佬总结
以上是大佬教程为你收集整理的当我滚动浏览时,列表中的复选框会随机选中/取消选中。 android 2.3全部内容,希望文章能够帮你解决当我滚动浏览时,列表中的复选框会随机选中/取消选中。 android 2.3所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。