正如标题所说,我很难理解registerDataSetObserverin the Constructorofcwac-adapter
/**
* Constructor wrapping a supplied ListAdapter
*/
public AdapterWrapper(ListAdapter wrapped) {
super();
this.wrapped=wrapped;
wrapped.registerDataSetObserver(new DataSetObserver() {
public void onChanged() {
notifyDataSetChanged();
}
public void onInvalidated() {
notifyDataSetInvalidated();
}
});
}
这不会创建对 的递归调用notifyDataSetChanged()吗?
我的理解是,notifyDataSetChanged()将调用onChanged所有注册的观察者Adapter。因此,调用notifyDataSetChanged()将onChanged()创建递归调用。
我的理解错了吗?如果是的话,这里到底发生了什么?如果不是,那么进行这种递归调用有什么用?