我的问题是,这个方法在ajax填充之前返回列表。
在返回列表之前,我该如何等待ajax响应?
地理编码器地理:
public List<Address> getAddresses(String address) {
List<Address> addresses = new ArrayList<Address>();
String url = "http://maps.googleapis...";
AQuery aq = new AQuery(context);
aq.ajax(...); //Here I fill the addresses list
return addresses;
}
答案 0 :(得分:0)
将aq.ajax()放在不同的方法/函数中,当ajax调用在该方法/函数中成功完成时,将结果返回给此方法/函数,然后从此方法/函数返回这些结果。
答案 1 :(得分:0)
进行同步调用,默认情况下,AJAX执行异步调用(异步应为false)。
在异步调用中,在从您请求的网址接收数据之前,它会返回地址。
修改强>
收到回复后你可以返回地址,否则你可以调用睡眠功能,你可以做异步:false,但最后一个不是推荐的方式。