Как анимировать в другую позицию эту центральную карту - PullRequest
2 голосов
/ 24 мая 2011

У меня есть действие, которое расширяет MapActivity, и внутри onCreate () У меня есть этот код

 GeoPoint point = new GeoPoint((int)(1.3*1E6),(int)(34.45*1E6)); 
 final MapController mc;
 mc.animateTo(point);

, который анимирует до этого момента, однако, когда он анимирует, точканаходится в центре экрана, и я хочу, чтобы он был в фиксированной (X, Y) позиции на экране.Существует ли функция mc.animatetoLeftBottom (point)?

Редактировать : я использовал Projection p = mapView.getProjection(); point = p.fromPixels(50, 60); mc.animateTo(point);

картинки: когда я запускаю приложение, оно выглядит так:

initial

После того, как я один раз нажму на булавку, это будет выглядеть так

after one tap

И, если я снова нажму наПин, это будет выглядеть следующим образом:

after two taps

Вот как это должно выглядеть, независимо от того, где я нажимаю на него, или если я прокручиваю, масштабирую и затем снова нажимаю:

how it should be

Я хочу, чтобы он автоматически перемещался в это положение (см. Последнее изображение), когда я касался пальца

Ответы [ 2 ]

3 голосов
/ 24 мая 2011

Разве вы не можете просто изменить GeoPoint, чтобы учесть факт и анимировать в другую точку?

2 голосов
/ 24 мая 2011

Попробуйте это:

MapView mv = getMapView(); // fetch your map view
Projection p = mv.getProjection(); 
GeoPoint point = p.fromPixels(X, Y);
mc.animateTo(point);
...