购物车的删除逻辑有问题额
来源:13-4 购物车事件逻辑梳理与实现-2
JackBook
2018-01-29
removePosition = entityPosition - (mTotalCount - mCurrentCount), mTotalCount 只有初始值0 那么 负负得正 那样的话,removePosition 肯定有问题
2回答
-
关于购物车的问题,去群里看看,我记得有解决方法,不知道能不能帮助你
012018-01-30 -
励志克服拖延症的yato
2018-07-04
我没有在群里面找到解决办法,看到有的也是存在问题的
下面我把我自己改的方法写在这里
//清空当前选中的item
for (MultipleItemEntity entity : deleteEntities) {
int removePosition;
final int entityPosition = entity.getField(ShopCartItemFields.POSITION);
if (entityPosition <adapter.getItemCount()) {
adapter.remove(entityPosition);
//把后面的所有数据的position都减一
for (int i = entityPosition;i<adapter.getItemCount();i++){
int currentPosition =(int)adapter.getData().get(i).getField(ShopCartItemFields.POSITION)-1;
adapter.getData().get(i).setField(ShopCartItemFields.POSITION,currentPosition);
}
}}
这样的想法主要是改变我们删除的item后面的item的positon,因为删除一个之后后面的position都要减1,
之后就和删除后的item对应上了,多选的话是一个道理,都是将它之后item的position减1.
10
相似问题