Android GPS航路点经纬度

Android GPS航路点经纬度,android,tags,gps,latitude-longitude,google-maps-android-api-2,Android,Tags,Gps,Latitude Longitude,Google Maps Android Api 2,我正在使用Goggle Maps SDK在手机上制作GPS应用程序。我想添加一个功能,允许用户只需在屏幕上点击一个特定点,即可获得该点的纬度和经度 一个例子是,如果有一个“这是什么?”的功能,就像谷歌地图上的功能一样,但在手机版本上?在代码中我该怎么做呢?好的。首先,您需要扩展com.google.android.maps.Overlay并覆盖onTap方法: class MOverlay extends Overlay { @Override public bo

我正在使用Goggle Maps SDK在手机上制作GPS应用程序。我想添加一个功能,允许用户只需在屏幕上点击一个特定点,即可获得该点的纬度和经度


一个例子是,如果有一个“这是什么?”的功能,就像谷歌地图上的功能一样,但在手机版本上?在代码中我该怎么做呢?

好的。首先,您需要扩展
com.google.android.maps.Overlay
并覆盖
onTap
方法:

class MOverlay extends Overlay {
        @Override
        public boolean onTap(GeoPoint p, MapView mapView) {
            int latitude = p.getLatitudeE6();
            int longitude = p.getLongitudeE6();

            // Do whatever you need to do here.

            return true; // true means we handled the tap
        }

}
然后,需要将此覆盖添加到地图上的覆盖列表中。假设您的活动正在扩展
MapActivity
,此代码应该可以工作:

class MyActivity extends MapActivity {
     public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);

          // your code here

          MapView map = findViewById(R.id.map); // you can change this

          MOverlay clickCatcher = new MOverlay();
          List<Overlay> allOverlays = map.getOverlays();
          allOverlays.add(clickCatcher);
          map.invalidate();
          // All done!
     }
}
类MyActivity扩展了MapActivity{
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
//你的代码在这里
MapView map=findViewById(R.id.map);//您可以更改此设置
MOverlay clickCatcher=新建MOverlay();
List allOverlays=map.getOverlays();
allOverlays.add(单击捕捉器);
map.invalidate();
//全部完成!
}
}

希望这对你有帮助。祝你好运

所以,如果我理解你的问题,你的应用程序中已经有谷歌地图,你只想找到点击的lat/long,对吗?是的,应用程序已经在我的手机上,我想找到点击/屏幕保持的lat/long我仍然很困惑。你的手机上有谷歌地图应用程序吗,或者你的应用程序有谷歌地图SDK吗?对不起,这是我第一篇帖子。。。到目前为止,我已经使用google maps sdk制作了一个应用程序,目前它只使用GPS获取当前位置,我正在尝试让它在我的手机上触摸地图上的位置时显示其他lat/long。如果这更好:)没问题,检查一下。非常感谢您的时间:)我可能会在周末实施,看看效果如何。