Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android osmdroid覆盖以当前位置为中心_Android_Dictionary_Openstreetmap_Osmdroid - Fatal编程技术网

Android osmdroid覆盖以当前位置为中心

Android osmdroid覆盖以当前位置为中心,android,dictionary,openstreetmap,osmdroid,Android,Dictionary,Openstreetmap,Osmdroid,我使用的是osmdroid,我在地图中添加了MyLocationNewOverlay来显示我的当前位置。这个看起来不错。我想要的是一个按钮,它将把地图放在我当前位置的中心,类似于谷歌地图 有没有办法做到这一点?如果没有,我该如何创建一个自定义覆盖来实现这一点 我意识到MyLocationNewOverlay有一个支持跟踪位置的功能。我不要这个。我只需要一个按需居中按钮。地图视图中的setCenter()方法以及animateTo()。控制器应居中地图 val mMyLocationOverlay

我使用的是osmdroid,我在地图中添加了MyLocationNewOverlay来显示我的当前位置。这个看起来不错。我想要的是一个按钮,它将把地图放在我当前位置的中心,类似于谷歌地图

有没有办法做到这一点?如果没有,我该如何创建一个自定义覆盖来实现这一点

我意识到MyLocationNewOverlay有一个支持跟踪位置的功能。我不要这个。我只需要一个按需居中按钮。

地图视图中的
setCenter()
方法以及
animateTo()
。控制器应居中地图

val mMyLocationOverlay = MyLocationNewOverlay(GpsMyLocationProvider(this), myMapView)
                    val mapController = mapView.controller
                    mMyLocationOverlay.disableMyLocation()
                    mMyLocationOverlay.disableFollowLocation()
                    mMyLocationOverlay.isDrawAccuracyEnabled = true
                    mMyLocationOverlay.runOnFirstFix {
                        runOnUiThread {
                       mapController.setCenter(mMyLocationOverlay.myLocation);                        
                       mapController.animateTo(mMyLocationOverlay.myLocation)
                        }
                    }
            mapView.overlays.add(mMyLocationOverlay)

关于叠加按钮,您可以在地图顶部放置一个静态按钮。这可能不是一个完美的解决方案,但它应该可以做到这一点。

只需获取当前位置并设置地图。我想知道的是,在地图上添加一个按钮作为覆盖,这样会触发该操作。为什么不将该按钮添加为地图上方的视图?无论如何,它应该是静态的。是的,我知道我可以添加一些随机按钮并将其放入活动中,然后执行代码以使地图居中。我想把它当作覆盖层来做。它会很好地集成,就像指南针和缩放按钮一样。我也有同样的问题。你找到解决办法了吗?