我正在使用不同的方法Thread
来清除适配器List
,有时我会得到一个IndexOutOfBoundsException
.
我想问题是在自定义适配器填充过程的中间某处ListView
,第二个线程调用list.clear()
导致list.size()
返回 0,导致某处越界。
如何通过同步使这个线程安全(如果这可以解决它)?
//onCreate
fillList(list); // fills the list
new AsyncTaskSubclass().execute(); // clear the list on a different Thread
编辑:我认为问题AsyncTask
在于清除ArrayAdapter
子类使用的列表,有没有办法改变List
适配器使用的?