我有一個獨立於MainActivity的AsyncTask類。無法得到AsyncTask的結果
protected void onPostExecute(ArrayList<String> result) {
System.out.println("flag1");
MainActivity.myLst=new ArrayList<String>();
MainActivity.myLst=result;
}
然後我在我的MainActivity中有以下代碼。
public void onCreate(Bundle savedInstanceState) {
new AsyncTask().execute();
System.out.println("flag2");
System.out.println(myLst.size());
}
程序首先輸出FLAG2和myLst.size是0。如果予負到其他活動,然後回到主活性和myList.size具有正確的尺寸。我認爲它應該輸出一切,並在MainActivity之前在AsyncTask中完成工作。
得到結果的片段裏面.... 看可能是因爲它首先到達System.out.println完成異步任務並有時間「填充您的列表」。 – nunofmendes
把'sysout'作爲'onPostExecute'的最後一行:'System.out.println(MainActivity.myLst);' – gunar