2014-03-12 97 views
5

由於過去在使用時的AsyncTask我們有兩個方法doInBackground()做所有的工作和onPostExecute()做修改時,所有的數據備份完成,這樣我就可以停止所有代碼直到正確的數據回來,然後根據這些數據做我所需要的。有沒有什麼辦法阻止凌空請求,直到響應完成

但是,當我嘗試移動到Volley庫時,在調用請求時,我只需要onResponse()方法,但存在一個問題,即需要根據返回的數據執行一些代碼,但是無法將代碼保存在這點。

所以有任何方法舉行排球請求,直到響應完成?

*我知道我們可以覆蓋onResponse()做什麼,我們需要在完整的數據回來,但是這也有很多嵌套編碼和方法。

謝謝所有幫助的人。

+0

我覺得凌空整點是異步的,之後是可能的,好像你正在尋找的是什麼一個常規的請求調用... –

+0

我試圖利用凌空特徵,並遠離asynckTask問題 – devqmr

+0

使得sence,你應該嘗試迫使線程等待,一個很好的理解線程機制將幫助你擺脫它... –

回答

8

如果您正在尋找同步執行請求,您可以使用RequestFuture等待,直到返回響應。這不應該在主線程上完成,因爲它會導致您的用戶界面鎖定。

這已經回答了,以及在這裏:https://stackoverflow.com/a/18541806

+0

是的,這項工作與我 – devqmr

+0

這是如何做到的?請解釋 –

0

此設置一個回調的功能回答here

相關問題