8

我在这里读过类似的帖子,甚至用谷歌搜索但没有解决方案。

onProgressUpdate() 只是没有被调用。

这是代码:

public class DoHardWork extends AsyncTask {

    @Override
    protected Object doInBackground(Object... params) {


        publishProgress("Requesting XML data");
        this.requestData();

        publishProgress("Returning results");
        this.returnResults();

        return null;
    }



    protected void onProgressUpdate(String text) {
        super.onProgressUpdate(text);
        MainActivity.setLog(text);
    }
}

我尝试在 onProgressUpdate() 中设置断点,但它从未被调用过。就像代码被忽略了一样。

有人遇到了类似的问题,结果只是日食在惹他生气,但我尝试重新启动它但没有成功。

有任何想法吗?

4

1 回答 1

13

我认为您错过了代码中的某些内容。试试这个:

private class DoHardWork extends AsyncTask<Void, String, Long> {
    protected Long doInBackground(Void... urls) {
         publishProgress("Requesting XML data");
         this.requestData();

         publishProgress("Returning results");
         this.returnResults();

         return null;
    }

    protected void onProgressUpdate(String... progress) {
        super.onProgressUpdate(progress);
        MainActivity.setLog(progress[0]);
    }


}
于 2012-05-22T17:33:24.340 回答