今天搞了一个界面是,在Listview 中的每个小item 中嵌套一个Gridview ,发现Listview 的madapter.notifyDataSetChanged的时候,Gridview 里面的内容没有变,查找了下原因是因为,我把Gridview 的ArrayList的变量定义在了 Listview 的adapter的头上面,然后在每个Listview 的getview中直接clear() Gridview 的ArrayList 变量。
错误写法:在getview 中只清除了一下,重新赋值。
mImageList.clear();
mImageList=orderChanPin.getmImageList();
正确写法
ArrayList<UploadPhotoEntity> mImageList =new ArrayList<>(); //一定要在geiview中定义,不然notifyDataSetChanged 不能刷新gridView
mImageList=orderChanPin.getmImageList();