以下代码无效,因为在onChanged方法中,我们无法访问这个,因为这两个是不同的对象。
我该如何解决这个问题?请帮我。感谢。
this.registerDataSetObserver(new DataSetObserver() {
@Override
public void onChanged() {
super.onChanged();
//this will not work
this.checkedStates = new ArrayList<CheckboxState>(this.getCount());
}
});
答案 0 :(得分:0)
如果代码在适配器内且checkedStates是类字段,只需使用:
registerDataSetObserver(this);
然后让你的适配器实现DataSetObserver
@Override
public void onChanged(){
super.onChanged();
checkedStates = new ArrayList<CheckboxState>(getCount());
}