Как сохранить состояние карты в Android? - PullRequest
0 голосов
/ 04 августа 2011

Я использую MapView с местоположением по умолчанию.Если я перехожу в другое место на карте, а затем меняю ориентацию устройства, ориентация не сохраняет мое предыдущее местоположение.Он начинается с местоположения по умолчанию!

Как этого избежать?Я не хочу отключать изменение экрана для моего приложения.

1 Ответ

2 голосов
/ 04 августа 2011

Используйте метод onRetainNonConfigurationInstance() для сохранения местоположения, а затем используйте getLastNonConfigurationInstance() в onCreate() для восстановления выбранного элемента.

@Override
public Object onRetainNonConfigurationInstance() {
    return mapView.getMapCenter();
}

@Override
protected void onCreate(Bundle icicle) {
    Geopoint center = (Geopoint) getLastNonConfigurationInstance();

    if (point != null)
        mapView.getController().animateTo(center);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...