Обработка изменений ориентации в картах baidu
Как правильно обрабатывать изменения ориентации в Baidu Maps?
Кажется, что нет никакого метода получения или установки, чтобы получить центр и уровень масштабирования или границы отображаемой в данный момент карты.
1 ответ
Решение
Нормальный способ сохранить состояние onSaveInstanceState(...)
Перезвоните. Я написал этот код здесь:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putParcelable("map", mapView.getMap().getMapStatus());
}
Если вы хотите восстановить данные, попробуйте этот пример (взят из фрагмента):
@Nullable
@Override
public synchronized View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.baido_map, container, false);
mapView = (MapView) view.findViewById(R.id.baido_map);
if(savedInstanceState != null) {
mapView.getMap().setMapStatus(MapStatusUpdateFactory.newMapStatus(savedInstanceState.getParcelable("map")));
}
return view;
}