Android OSM droid - установить максимальный уровень масштабирования - PullRequest
6 голосов
/ 21 июля 2011

Я реализую приложение с использованием osmdroid mapView.У нас есть карты с максимальным уровнем масштабирования 16, но Android позволяет нам иметь 18 уровней масштабирования.Знаете ли вы, как установить максимальный уровень масштабирования 16 вместо 18 по умолчанию?

Спасибо

Хмызак

Ответы [ 2 ]

7 голосов
/ 22 июля 2011

Обновление - мы добавили простые методы setMin / MaxZoomLevel () в MapView в стволе. Должен быть включен в 3.0.10.

См. https://code.google.com/p/osmdroid/issues/detail?id=418 для дополнительной информации.

Оригинальный ответ:

Создайте свой собственный класс TileSource и используйте его. Вы можете использовать один из классов исходных бетонных плиток, например:

public static final OnlineTileSourceBase MyMapTileSource = new XYTileSource("My Tile Source",ResourceProxy.string.mapnik, 0, 16, 256, ".png", "");

Обратите внимание на «16» - именно здесь вы указываете максимальный уровень масштабирования.

Но на самом деле вы должны создать свой собственный конкретный класс и расширить BitmapTileSourceBase. Похоже, вы используете статические изображения, а не онлайн-изображения, для чего и нужен XYTileSource.

1 голос
/ 09 ноября 2015

Вы можете использовать методы mapView.setMinZoomLevel() и mapView.setMaxZoomLevel() для регулировки уровня масштабирования.

...