首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sygic既不显示当前位置,也不显示标记

Sygic既不显示当前位置,也不显示标记
EN

Stack Overflow用户
提问于 2018-11-14 08:52:04
回答 1查看 204关注 0票数 2

我希望在地图加载时显示位置指示符,并在单击地图时添加标记,但这些都不起作用!

代码语言:javascript
复制
protected void onCreate(Bundle savedInstanceState)  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    final MapFragment mapFragment = (MapFragment) getSupportFragmentManager().findFragmentById(R.id.mapFragment);
    assert mapFragment != null;
    mapFragment.getMapAsync(new OnMapInitListener() {
        @Override
        public void onMapReady(MapView mapView) {
           OnlineManager.getInstance().enableOnlineMapStreaming(true);
            PositionManager.getInstance().startPositionUpdating();
            PositionManager.getInstance().enableRemotePositioningService();
            mpView=mapView;

            mpView.addMapGestureListener(new MapGestureAdapter() {

                @Override
                public boolean onMapClicked(final MotionEvent e, final boolean isTwoFingers) {

                    MapMarker marker = new MapMarker(new GeoCoordinates(PositionManager.getInstance().getLastKnownPosition().getLongitudeAccuracy(),PositionManager.getInstance().getLastKnownPosition().getLatitudeAccuracy()));
                    mpView.addMapObject(marker);
                    return true;
                }
            });

        }

        @Override
        public void onMapError(int error, String info) {}
    });

} 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-16 10:25:56

您正在尝试用getLongitudeAccuracy()getLatitudeAccuracy()创建新的标记。你需要使用地理坐标!

如果要将标记添加到最近已知的gps信号的位置,可以使用以下代码:MapMarker marker = new MapMarker(PositionManager.getInstance().getLastKnownPosition().getCoordinates())

但是,由于当时不可能有已知的位置,因此不可能添加标记。所以一定要打开位置和强信号。根据您的示例,向您单击的位置添加标记将更有意义。为此目的,请使用以下代码:

代码语言:javascript
复制
        mpView.addMapGestureListener(new MapGestureAdapter() {

            @Override
            public boolean onMapClicked(final MotionEvent e, final boolean isTwoFingers) {

                MapMarker marker = new MapMarker(mpView.geoCoordinatesFromPoint(e.getX(), e.getY()));
                mpView.addMapObject(marker);
                return true;
            }
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53296203

复制
相关文章

相似问题

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