Я использую Mlnmapview Maplibre на iOS. Я хочу «центрировать» карту в место, но этот центр не был в середине представления карты, но, например, 40 шт ниже. Итак, скажем, на карте есть пользователь, и я хочу, чтобы карта была «центр на ней», пользователь должен приземлиться на 40 баллов ниже центра MapView. Как я могу изменить центр карты, так что когда я называю «setCenter» в месте, карта перемещается так, чтобы это место было в исправленном центре? центры вокруг середины вида. Вот что я попробовал: < /p>
mapView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: 30, right: 0)
< /code>
и < /p>
self.view.layoutMargins = UIEdgeInsets(top: 0, left: 0, bottom: 30, right: 0)
Но ни один из них не изменяет точку привязки для увеличения или центрирования - всегда находится в середине. Zoomlevel.import UIKit
import MapLibre
class MapTestViewController: UIViewController {
var mapView: MLNMapView!
override func viewDidLoad() {
super.viewDidLoad()
mapView = MLNMapView(frame: view.bounds)
mapView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
view.addSubview(mapView)
// Try to shift the center visually (does NOT work for zoom/center)
mapView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: 30, right: 0)
// Center on a coordinate (user will be in the middle, not above)
let userCoord = CLLocationCoordinate2D(latitude: 37.7749, longitude: -122.4194)
mapView.setCenter(userCoord, zoomLevel: 12, animated: false)
// The user is now in the middle of the view, but it should be 40 pts below. And this should work for any zoomLevel, so I cannot just shift by a fixed amount of meters.
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... apview-ios
Как изменить визуальный центр Maplibre mlnmapview (iOS)? ⇐ IOS
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение