首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启用Compass OSMDROID

启用Compass OSMDROID
EN

Stack Overflow用户
提问于 2011-11-11 20:40:33
回答 4查看 5.5K关注 0票数 2

如何在Open Street Map中启用指南针模式?

有没有办法或者我需要自己创建定位系统?

EN

回答 4

Stack Overflow用户

发布于 2014-03-19 23:40:03

下面是我启用指南针的方法:

代码语言:javascript
复制
MapView oMap;
IMapController mapController;
.......

mapController = oMap.getController();
mapController.setZoom(zoom);
mapController.setCenter(new GeoPoint(latitude, longitude));
MyLocationNewOverlay oMapLocationOverlay = new 
MyLocationNewOverlay(getApplicationContext(),oMap);
oMap.getOverlays().add(oMapLocationOverlay);
oMapLocationOverlay.enableFollowLocation();
oMapLocationOverlay.enableMyLocation();   

CompassOverlay compassOverlay = new CompassOverlay(this, oMap);
compassOverlay.enableCompass();
oMap.getOverlays().add(compassOverlay);
票数 2
EN

Stack Overflow用户

发布于 2011-11-22 02:28:43

要在地图上显示指南针,请使用MyLocationOverlay中的enableCompass()

来自MyLocationOverlay.java

启用方向传感器(指南针)更新并在地图上显示指南针。您可能需要从Activity的Activity.onResume()方法调用enableCompass(),以启用此覆盖的功能。记住在活动的Activity.onPause()方法中调用相应的disableCompass(),以便在后台关闭更新。

如果您还想旋转地图,有一个实现该功能的osmdroid分支:http://code.google.com/p/osmdroid/source/browse/branches/rotation/OpenStreetMapViewer/src/org/osmdroid/MapActivity.java?r=914

票数 1
EN

Stack Overflow用户

发布于 2016-10-22 07:11:47

由于问题不清楚,我会给你我想要的东西,那就是屏幕上的指南针。

代码语言:javascript
复制
CompassOverlay mCompassOverlay = new CompassOverlay(getContext(),
            new InternalCompassOrientationProvider(getContext()),
            mMapView);
mCompassOverlay.enableCompass();
mMapView.getOverlays().add(this.mCompassOverlay);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8094115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档