карты андроида: как определить центр карты после того, как перетаскивание было завершено

Иногда уместно скрыть классы реализации от пользователя - в этих случаях, лучше поместить их в foo_internal.h, чем в общедоступном определении класса. Тем путем читатели Вашего foo.h не будут видеть то, что Вы предпочли бы, чтобы они не были обеспокоены с, но Вы можете все еще тесты записи против каждой из конкретных реализаций Вашего интерфейса.

10
задан vamsibm 20 November 2009 в 22:51
поделиться

1 ответ

Используете ли вы MapActivity ? Вот код, который я использовал:

MapView mapView = (MapView)findViewById(R.id.map);
Projection projection = mapView.getProjection();
int y = mapView.getHeight() / 2; 
int x = mapView.getWidth() / 2;

GeoPoint geoPoint = projection.fromPixels(x, y);
double centerLatitude = (double)geoPoint.getLatitudeE6() / (double)1E6;
double centerLongitude = (double)geoPoint.getLongitudeE6() / (double)1E6;

Вам также нужно добавить код, похожий на этот:

@Override
public boolean dispatchTouchEvent(MotionEvent event)
{
    boolean result = super.dispatchTouchEvent(event);
    if (event.getAction() == MotionEvent.ACTION_UP)
        reload_map_data();    ///  call the first block of code here
    return result;
}
3
ответ дан 3 December 2019 в 22:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: