由于android的线程非安全,直接在子线程中对UI进行更新是不被允许的,同样在常用的 适配器+List<E> 组合中,子线程直接更新与适配器绑定的List,便可能产生IllegalStateException异常。 解决办法: 增加中间变量 线程中更新的ListA与适配器绑定的ListB变成两个变量, 当子线程获取数据后,使用addAll将线程获取的数据ListA深拷贝到与适配器绑定的ListB上,再进行notifyDataSetChanged();