SimpleAdapter - 将新数据添加到列表但是在哪个线程上?

时间:2011-07-04 08:25:48

标签: android

我正在使用SimpleAdapter来填充ListActivity。从Google I / O视频“ListView的世界”中可以清楚地看到,必须从UI线程调用notifyDataSetChanged()方法(对于SimpleAdapter)。但是关于更新ListActivity中的ArrayList可以从任何其他线程安全地完成吗?

目前我使用非ui线程更新我的ArrayList中的数据,然后从UI线程调用notifyDataSetChanged()。这很好用,我也可以动态更新SimpleAdapter。但是,我的应用程序的某个方面可能导致它崩溃,并且当我的ListActivity成为焦点时会发生这种情况。我目前正在探索异常的可能原因,而Google I / O视频中提到的内容让我不确定是否可以安全地从另一个线程更新我的ArrayList。

1 个答案:

答案 0 :(得分:0)

根据源代码,adapt不会在底层数据列表上进行任何类型的同步,因此我认为它只应该从UI线程进行更改。