1

我的问题是,这个方法在 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;    
        }    
4

2 回答 2

0

进行同步调用,默认情况下 AJAX 进行异步调用(异步应为 false)

在异步调用中,在从您请求的 url 接收数据之前,它会返回地址。

编辑:

您可以在收到响应后返回地址,否则您可以调用 sleep 函数并且您可以执行 async: false,但最后一个不是推荐的方式。

于 2013-11-29T13:10:32.240 回答
0

将 aq.ajax() 放在不同的方法/函数中,当在该方法/函数中成功完成 ajax 调用时,将结果返回到该方法/函数,然后从该方法/函数返回这些结果。

于 2013-11-29T10:55:54.200 回答