0

例如,当我向服务器发送一个 http 请求时,在我得到完整的响应数据之前,我通常会显示一个进度对话框并使其不可取消。我觉得这个设计一点都不友好,所以我想让对话框可以取消,但我发现我可以取消对话框但不能取消http请求。我在 AsyncTask 的子类中发送请求,doInBackgroud() 方法中没有循环,所以我无法检查取消属性。也许原始设计可以接受?

欢迎任何建议,谢谢!

4

1 回答 1

3

如果在用户按下取消时不取消 HTTP 请求是可以的,只要它在用户看来就好像操作被取消了。

最终 HTTP 请求会在后台失败或成功。然后检查 isCancelled(),然后静默退出 doInBackground()。

于 2012-12-21T08:28:04.690 回答