Нажмите на Google Map и получите геолокацию - PullRequest
0 голосов
/ 03 декабря 2011

У меня есть действие, в котором пользователь должен указать местоположение создаваемого им POI.Итак, есть пустая карта.Я хочу, чтобы можно было долго нажимать на какую-то точку на карте и получить это местоположение.

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

Я пробовал с onTouchEvent в MapActivity, но он не запускается при нажатии на карту.

 @Override
 public boolean onTouchEvent(MotionEvent ev){
     if (ev.getAction() == 1){
         GeoPoint p = mapView.getProjection().fromPixels((int) ev.getX(), (int) ev.getY());
         Toast.makeText(this, p.getLatitudeE6() / 1E6 + "," + p.getLongitudeE6() / 1E6, Toast.LENGTH_LONG).show();
     }
     return false;
 }

Есть ли способ сделать это, или я должен использовать оверлеи для этого?

Ответы [ 2 ]

1 голос
/ 03 декабря 2011

http://mobiforge.com/developing/story/using-google-maps-android

См. Эту ссылку и см. Раздел «Получение местоположения, которое было затронуто» ниже рисунка 9.

это может вам помочь

0 голосов
/ 16 декабря 2011

В конце я использовал этот подход:

https://github.com/commonsguy/cw-android/tree/master/Maps/NooYawk

Он рисует маркер и позволяет перемещать его по карте.Вы можете легко получить координаты маркеров с помощью предоставленного кода.

...