这是我第一次在这里提问,所以请告诉我是否错过了包含的内容。
我有一个打印返回String的方法。在其中,是一个异步齐射请求,它检索要添加到String的特定值。问题是发出了请求,但由于它是一个异步请求,该方法仍然继续并返回String,即使它仍然没有来自请求的值。请求随后完成。所以问题是,有没有办法让方法在继续之前等待特定变量具有值,而不冻结UI?我应该创建一个新线程吗?
下面的代码不是我的实际代码,但它显示了大纲。
public String getStr{
StringBuilder sb = new StringBuilder();
String strOne;
// code here..
// asynchronous request here..
// code here..
sb.append(strOne)
// code here..
return sb.toString();
}
异步请求 是指截击请求。 任何帮助表示赞赏。提前谢谢!
答案 0 :(得分:4)
您应该在onResponse(@Override)方法中处理响应。看一下本教程:
Asynchronous HTTP Requests in Android Using Volley
如果你想将响应返回到另一个类来处理它,我建议你实现一个接口。我可以在这里发布代码,但我在这里提出了这样的问题:
Volley , Wait for response to return wait until use flag - answer