2016-07-01 50 views
0

我在我的活动上实现了一个地图,但经度和纬度来自服务器。 的AsyncTask请求这些值,但我不知道我怎么能等待启动OnMapReadyCallback回调之前接收到的数据...在启动MapReady回调之前等待数据

这里是我的代码:

@Override 
public void onCreate(Bundle savedInstanceState) { 
.... 
//retrieve the latitude and longitude 
new ProgressTask().execute(); 

m = ((SupportMapFragment) this.getSupportFragmentManager() 
      .findFragmentById(R.id.map)); 
//need to wait for AsyncTask... 
m.getMapAsync(this); 

我有望推出命令

m.getMapAsync(this); 
在我的AsyncTask的onPostExecute

@Override 
protected void onPostExecute(OnMapReadyCallback result) { 
.... 
.... 

但我不知道如何传递参数OnMapReadyCallback到AsyncTask?

回答

1

我终于找到了一个解决方案(不知道这是最好的一个......)来获取我的活动(实现OnMapReadyCallback)我打电话的

m.getMapAsync(this); 
从方法出来

上下文onPOstExecute:

@Override 
protected void onPostExecute(Fragment result) { 
.... 
loadMap(); 
} 

public void loadMap(){ 

    m.getMapAsync(this); 
} 
相关问题