我想知道在Volley中取消正在執行的NetworkImageView請求的正確方法。在Android Volley中取消NetworkImageView請求
我有一個片段,用一些文本填充列表視圖(通過使用Volley的JSON RPC調用來檢索),每個列表項都有一個NetworkImageView。
在我的片段的的onPause()我有:
@Override
public void onPause() {
super.onPause();
VolleyRequestManager.getRequestQueue().cancelAll(this);
}
每個文本的JSON請求我的標籤相應設置爲此:
mRequest = new JsonRpcRequest<Data>(Method.POST,
jsonRpcRequestBody,
Dataclass.class,
createSuccessListener(),
createErrorListener());
mRequest.setTag(this);
VolleyRequestManager.getRequestQueue().add(mRequest);
的問題是;與我的佈局XML資源文件中定義的NetworkImageView一樣,它們與JSON請求不共享相同的標記,所以我相信它們不會在我的onPause()代碼觸發cancelAll(this)時被取消。有沒有辦法以某種方式取消相應的NetworkImageViews?或者我需要破解沃利的代碼來添加一個方法來取消所有的請求,忽略標記比較?
這是事實。我也錯過了這一點,併爲NetworkImageViews添加了標籤,並浪費了相當長的一段時間。只有常規請求才能被標記,然後從onPause手動取消。 – slott