我在ExpandableListView中使用了一些Switch。但是在我更改开关值并滚动ExpandableListView后,开关会自动设置为默认值。 这些是我的代码
@Override
public View getChildView(final int groupPosition, final int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
//attach a listener to check for changes in state
viewHolder.switchChild.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
if(isChecked)
{
_MyOfferFilterData.get(childPosition).setValue("true");
}
else
{
_MyOfferFilterData.get(childPosition).setValue("false");
}
}
}
答案 0 :(得分:0)
每次加载ExpandableListView时,是否从DB填充ArrayList?如果是,则在ArrayList中设置标志时,还必须在DB中设置标志。否则,当ExpandableListView刷新时,ArrayList将刷新DB中的内容。