美文网首页
记录一次RecyclerView删除数据后更新数据报IndexO

记录一次RecyclerView删除数据后更新数据报IndexO

作者: jy006 | 来源:发表于2017-11-21 09:29 被阅读16次

这好像是第一次在这写文章,以此记录一些BUG和学习心得。最近在使用RecyclerView过程中出现了一个问题,没错就是我们也常见的数组越界,如图:

删除数据报数组越界

据查阅了相关资料发现这是Recycleview自身的一个BUG,通过重写LinearLayoutManager可以将这个错误抛出,让程序正常运行。如下

public class WrapContentLinearLayoutManager extends LinearLayoutManager {

public WrapContentLinearLayoutManager(Context context) {

        super(context);

}

publicWrapContentLinearLayoutManager(Context context,intorientation,booleanreverseLayout) {

           super(context, orientation, reverseLayout);

}

publicWrapContentLinearLayoutManager(Context context, AttributeSet attrs,intdefStyleAttr,intdefStyleRes) {

        super(context, attrs, defStyleAttr, defStyleRes);

}

@Override

public voidonLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) {

try{

        super.onLayoutChildren(recycler, state);

}catch(IndexOutOfBoundsException e) {

        e.printStackTrace();

        }

    }

}

这样程序就不会报错了

相关文章

  • 记录一次RecyclerView删除数据后更新数据报IndexO

    这好像是第一次在这写文章,以此记录一些BUG和学习心得。最近在使用RecyclerView过程中出现了一个问题,没...

  • 缓存问题

    一、缓存更新策略 一般情况来说,缓存更新策略有三种: 先删除缓存,后更新数据库 先更新数据库,后更新缓存 先更新数...

  • 2020-11-28

    oracle误delete或update数据还原(恢复)方法记录 对于我这种大马虎,误删除数据倒不会,但是误更新数...

  • SQL基础语句

    SQL 基本语句记录 新建表 删除表: 插入数据: 删除数据: 更新数据: 新增字段: 删除字段: 修改字段: 重...

  • delete & truncate

    删除数据 delete 允许使用条件 (删除符合条件的数据);允许使用limit限制删除的记录数:limit n;...

  • SQL操作数据

    DML DML 语句可执行: 插入新数据 修改已有数据 删除数据 INSERT INSERT语句一次将一个记录的数...

  • Oracle基本sql语句与函数

    2019-05-09 SQL语句 插入记录 更新记录 删除记录 注意:delete删除的表数据可以还原 清空表 与...

  • SQL(二)

    修改数据 INSERT:插入新记录;UPDATE:更新已有记录;DELETE:删除已有记录。 INSERT INS...

  • 数据库框架踩坑记录

    GreenDao 缓存机制,导致更新记录后查询不到真实数据问题:更新记录后,数据库中的数据已经更新,但缓存中的数据...

  • 《SQL必知必会》—— 操作数据

    插入数据 更新数据 删除数据 创建表 更新表 删除表

网友评论

      本文标题:记录一次RecyclerView删除数据后更新数据报IndexO

      本文链接:https://www.haomeiwen.com/subject/qbruottx.html