本文转载:http://www.cnblogs.com/wangoublog/p/5338093.html
要点:因为在子线程中我们使用了界面相关的list,而界面此时也在占用此list,他们会公用一个内存,当list.size的大小改变,变得比之前小时,就会出现数组越界,比如之前的数组大小为5,当之后list变成3时,list.get(i)中的i的最大值还保留着之前的5的值,但遍历到最大时,就会越界,说是list大小只有3,没有index为5的数据
解决方案:
this.list.clear(); this.list.addAll(oist);
重新加载数据时,使用另外一个List,即olist,数据加载完成后再清空当前类list,然后使用addAll添加olist到当前类list中