Можно ли изменить уровень масштабирования для myLocation с помощью нового API Карт Google v2?
Если вы установите GoogleMap.setEnableMyLocation(true);
, вы получите кнопку на карте, чтобы найти свое местоположение.
Если вы нажмете на нее, карта приведет вас к вашему местоположению и приблизит его до некоторого уровня. Могу ли я изменить масштаб на меньшее или большее?
Ответы:
Сомнительно, что вы можете изменить его одним щелчком мыши с помощью маркера myLocation по умолчанию. Однако, если вы хотите, чтобы приложение автоматически увеличивало масштаб вашего местоположения, как только оно будет найдено, я бы ознакомился со своим ответом на этот вопрос.
Обратите внимание, что ответ, который я предоставил, не увеличивает масштаб, но если вы измените метод onLocationChanged, чтобы он был похож на метод ниже, вы можете выбрать любой уровень масштабирования, который вам нравится:
источник
Вы также можете использовать:
Чтобы просто изменить значение масштабирования на любое желаемое значение между минимальным значением = 2,0 и максимальным значением = 21,0.
API предупреждает, что не во всех местах плитки имеют значения с максимальным или близким к максимальному масштабированию.
Смотрите это для получения более подробной информации о методах масштабирования , доступных в
CameraUpdateFactory
.источник
с местоположением - в новом SDK GoogleMaps:
источник
Немного другое решение, чем у HeatfanJohn, где я изменяю масштаб относительно текущего уровня масштабирования:
источник
Вот приблизительные уровни масштабирования и их назначение:
поэтому вы можете сделать что-то вроде этого, например, для увеличения до уровня улицы (обратите внимание, что «15f» ниже - это уровень улицы):
Примечание: просто чтобы вы знали, что в разных местах могут быть разные максимальные уровни масштабирования. попробуйте использовать,
googleMap.maxZoomLevel
если хотите получить максимальный или минимальный уровень масштабирования.источник
В методе onMapReady ()
измените zoomLevel на любое желаемое значение.
источник
вам нужно написать только одну строчку в maps_activity.xml
Надеюсь, это решит вашу проблему ...
источник
Ты можешь использовать
источник
Даже у меня недавно был такой же запрос .... каким-то образом ни один из вышеупомянутых setmaxzoom или еще map: cameraZoom = "13" не работал Итак, я обнаружил, что зависимость, которую я использовал, была старой, пожалуйста, убедитесь, что ваша зависимость для карт Google правильно, это новейшее использование этого
источник
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(currentPlace,15));
Эффект анимации не будет.источник
Если вы хотите сохранить масштабирование или получать его постоянно, вам просто нужно позвонить по следующему
источник
Большинство приведенных выше ответов либо устарели, либо масштабирование работает, сохраняя текущую широту и долготу и не приближаясь к точному местоположению, которое вы хотите. Добавьте следующий код в свой метод onMapReady () .
источник
Я пробовал с «mMap.animateCamera (CameraUpdateFactory.zoomTo (17.0f));» но у меня это не сработало. Поэтому я использовал эту анимацию для увеличения в начале.
источник