NineGridImageView类中setImagesData(List lists)方法中mImgDataList = lists;这样导致mImgDataList 与传入的参数的内存地址一致,会使oldShowCount与newShowCount的判断永远相等,使第二次调用setImagesData(List lists)报错崩溃。
应该将mImgDataList = lists;修改为mImgDataList = new ArrayList<>(lists);,这样保证了原本作者的意图。
NineGridImageView类中setImagesData(List lists)方法中mImgDataList = lists;这样导致mImgDataList 与传入的参数的内存地址一致,会使oldShowCount与newShowCount的判断永远相等,使第二次调用setImagesData(List lists)报错崩溃。
应该将mImgDataList = lists;修改为mImgDataList = new ArrayList<>(lists);,这样保证了原本作者的意图。