大家好,我是Android编程新手,我有一个应用程序,当用户点击一个国家时,它会启动另一个活动,显示一个带有首都标记的地图。
但我需要从异步任务方法中获得资金。所以它需要返回国家信息,然后我可以更新我的地图。我在onPost Execute中调用了我的更新映射方法,但应用程序崩溃了?
在我的《关于创造》
mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync( this);
new GetCountryDetails().execute(selectedCountry);
然后在我的异步任务中
private class GetCountryDetails extends AsyncTask<String, String, CountryInfo> {
@Override
protected CountryInfo doInBackground(String... params) {
CountryInfo countryInfo = null;
在我的onPostExecute中
protected void onPostExecute(CountryInfo countryInfo) {
countryCapital=countryInfo.getCapital();
updateMap(map);//doesn't work here
4月1日:
public void onMapReady(GoogleMap map) {
map.setMapType(GoogleMap.MAP_TYPE_HYBRID);
map.getUiSettings().setMapToolbarEnabled(true);
更新映射
public void updateMap(GoogleMap map){
LatLng capitalCity = getCityLatitude(this, countryCapital);
map.moveCamera(CameraUpdateFactory.newLatLng(capitalCity));
MarkerOptions marker = new MarkerOptions().position(capitalCity).title( countryCapital);
map.addMarker(marker);
}
任何帮助都将不胜感激,谢谢!
我