Я попытаюсь разбить мою проблему на простой пример. Я попытался нарисовать круг, который находится точно в середине обзора. Для этого я использовал следующий код в метод вытягивания моей Overlay:Android: MapView - getMapCenter() неточно?
GeoPoint mapCenter = mapView.getMapCenter();
Projection projection = mapView.getProjection();
int centerLat = mapCenter.getLatitudeE6();
int centerLong = mapCenter.getLongitudeE6();
Point pCircleCenter = new Point();
GeoPoint circleCenter = new GeoPoint(centerLat, centerLong);
projection.toPixels(circleCenter, pCircleCenter);
canvas.drawCircle(pCircleCenter.x, pCircleCenter.y, 30, testPaint);
Когда я запускаю код круг точно в середине экрана. Он также остается в середине, когда я прокручиваю вертикально, но когда я прокручиваю , горизонтальный круг слегка перемещается в прокрученном направлении. Круг полностью вышел из положения после нескольких свитков вместо , оставаясь в середине.
(Это только упрощенная версия моей проблемы, но мне нужно, чтобы получить середине таким образом, вместо того, чтобы просто приклеить ее к середине зрения.)