【问题标题】:I want to show distance on Polyline googlemap Android我想在 Polyline googlemap Android 上显示距离
【发布时间】:2020-12-08 08:20:25
【问题描述】:

我想在折线上显示每个连接节点的距离。目前我没有得到这样的方法来显示多段线上的文本。请帮助是否可以在 android google maps api 中执行。

【问题讨论】:

    标签: android google-maps


    【解决方案1】:

    此方法 (Java) 将折线添加到地图中,并将每个线段的距离作为文本添加到折线上 - 使用另一个答案中的引用方法来显示文本。

    private void polylineLabels() {
        LatLng pt1 = new LatLng(39.935484,-83.023490);
        LatLng pt2 = new LatLng(39.098487,-84.446861);
        LatLng pt3 = new LatLng(39.743435,-86.104479);
        LatLng pt4 = new LatLng(38.202789,-85.739295);
        LatLng pt5 = new LatLng(38.614276,-90.138124);
    
        routePts.add(pt1);
        routePts.add(pt2);
        routePts.add(pt3);
        routePts.add(pt4);
        routePts.add(pt5);
    
        for (int i = 1; i < routePts.size(); i++) {
            Polyline line = mMap.addPolyline(
                    new PolylineOptions()
                    .add(routePts.get(i-1), routePts.get(i)).
                            width(5).color(Color.RED));
            double d = SphericalUtil.computeDistanceBetween(routePts.get(i-1),routePts.get(i));
            int dInt = (int)d;
            String msg = Integer.toString(dInt)+"m";
            LatLng midpt = SphericalUtil.interpolate(routePts.get(i-1),routePts.get(i), 0.5);
            Marker m = addText(this, mMap, midpt, msg, 2, 18);
        }
    }
    

    结果:

    您必须尝试使用​​偏移位置来更好地定位每个标签。

    这是定义addText 方法的答案:https://stackoverflow.com/a/30185289/2711811

    【讨论】:

    • 非常感谢安迪!
    • 它现在按我的预期工作!谢谢朋友。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-02
    • 1970-01-01
    相关资源
    最近更新 更多