Я пытаюсь исследовать, используя класс MapView для отображения GoogleMap, без везения, поскольку большинство примеров кода используют MapFragment, который я не хочу.
Я использую Google Maps Android API v2.
Сначала, для тестирования здесь из примера Google, мне удалось отобразить обычную нормальную карту.
public class POnlineMapView extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.online_map_activity);
}
}
Приведенный выше код отлично работает, что показывает, что все настроено правильно.
Теперь я пытаюсь использовать класс MapView для управления настройками отображения, такими как центральная точка, но похоже, что я получаю нулевой объект каждый раз, когда пытаюсь получить объект GoogleMap. Почему это так?
public class POnlineMapView extends Activity {
private MapView myMapView;
private GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
myMapView = new MapView(getApplicationContext());
Bundle b = getIntent().getExtras();
double longitude = b.getDouble("longitude");
double latitude = b.getDouble("latitude");
setContentView(R.layout.online_map_activity);
map = myMapView.getMap();
CameraUpdate center= CameraUpdateFactory.newLatLng(new LatLng(latitude,longitude));
CameraUpdate zoom=CameraUpdateFactory.zoomTo(17);
map.moveCamera(center); //this gives a NullPointerException, probably due to the myMapView.getMap() method?
map.animateCamera(zoom);
}
}