删除删除已删除

时间:2015-08-04 13:58:12

标签: java android arraylist

这个问题错了所以我把它编辑为空白

1 个答案:

答案 0 :(得分:1)

你的getContacts AsyncTask在另一个线程中运行(如词源所暗示的那样异步)。您的列表在该线程完成后更新,但您的日志记录与AsyncTask并行发生,因此在您记录大小时,列表 不包含任何内容。稍后,当您看到列表中显示的内容时,AsyncTask就会结束。

继承人可视化

主题:用户界面 ------------------------------------- ---------------------- ASYNCTASK

............... | .. ArrayList mNewList = new ...;

............... | .. mNewList = mListData.getContacts();

............... | .. AsyncTask :: onBeforeExecute()

............... | .................................................. ............................ | .. AsyncTask :: doInBackground启动

............... | .. Log.i(mNewList.size()); .................................... | .. (仍在工作)

............... | .................................................. ............................ | .. AsyncTask :: doInBackground返回

............... | .. AsyncTask :: onPostExecute

............... | .. mContacts.add(...)......

............... | ...