总算弄明白了DataSetObservable的notifyChanged的用法

		// 设置数据适配器
		adapter = new MyGridTagAdapter(this, mList, false);
		mGridTag.setAdapter(adapter);
	}

	public void onClick(View v) {
		mList.removeAll(mList);
		mList.addAll(ListUtil.getGridTagsList(20));
		vc.removeAll(vc);
		vc.addAll(MyVector.l2v(mList));
		adapter.notification();

一直以为DataSetObservable的notifyChanged在数据发生变化时就会重新调用在notifyChanged中的代码,今天总算明白了,DataSetObservable其实只是看适配器中监听的数据记录数是否曾经发生改变。

如果你用下面的代码就更新不了:

		mList=ListUtil.getGridTagsList(20);
		vc=MyVector.l2v(mList);
		adapter.notification();

如果你的数据记录条数一样多,则数据不更新


你可能感兴趣的:(编程学习笔记)