在我的主要活动中,我得到了一个名为 data 的数组列表。我调用了一个 asynctask 并做一些事情,这给了我一个不同的数组列表,称为值。
在异步任务的后期执行中,我想使用“值”中的项目将一些对象添加到“数据”中。但是,在调试时我注意到没有添加对象。
public class MainActivity extends Activity
{
ArrayList<DataItem> data;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
data = new ArrayList<DataItem>();
update();
}
public void update()
{
AsyncCallAWS thisTask = new AsyncCallAWS();
thisTask.execute();
}
private class AsyncCallAWS extends AsyncTask<String, Void, Void>
{
ArrayList<String> values = new ArrayList<String>();
protected void onPostExecute(Void result)
{
Log.i(TAG, "onPostExecute");
DataItem d;
for(String s : values)
{
d = new DataItem();
d.setValue(s);
d.setDataStreamName("test");
data.add(d);
}
}
//code to fill array
我猜这是因为我尝试从 asynctask 添加项目?我知道如何解决这个问题,我需要列表视图的数据数组列表。