Android 地图视图:在路线上绘制线

Android 地图视图:在路线上绘制线,android,android-mapview,draw,routes,Android,Android Mapview,Draw,Routes,我正在谷歌地图视图上画一条路线。但我的台词并不像截图中这样画在街上 我使用了以下代码: GeoPoint gp1; GeoPoint gp2 = null; StringBuilder sb = new StringBuilder(); sb.append("http://maps.google.com/maps/api/directions/xml").append("?origin=").append(origin) .append("&am

我正在谷歌地图视图上画一条路线。但我的台词并不像截图中这样画在街上

我使用了以下代码:

    GeoPoint gp1;
    GeoPoint gp2 = null;
    StringBuilder sb = new StringBuilder();
      sb.append("http://maps.google.com/maps/api/directions/xml").append("?origin=").append(origin)
      .append("&destination=").append(destination)
      .append("&mode=driving&sensor=true&language=de");
    System.out.println(sb.toString());
    xmlPaser parser = new xmlPaser();
    String xml = parser.getXmlFromUrl(sb.toString());
    Document doc = parser.XmlFromString(xml);
    System.out.println(doc);
    NodeList start = doc.getElementsByTagName("start_location");
    NodeList end = doc.getElementsByTagName("end_location");
    for (int intLoop = 0 ; intLoop < start.getLength() ; intLoop++){
        Element eStart = (Element) start.item(intLoop);
        Element eEnd = (Element) end.item(intLoop);
        String test = parser.getValue(eStart, "lat");
        String test2 = parser.getValue(eStart, "lng");
        if (intLoop == 0){
            gp1 = new GeoPoint((int) (Double.parseDouble(parser.getValue(eStart, "lat")) * 1E6),(int) (Double.parseDouble(parser.getValue(eStart, "lng")) * 1E6));
        }else{
            gp1 = gp2;
        }
        gp2 = new GeoPoint((int) (Double.parseDouble(parser.getValue(eEnd, "lat")) * 1E6),(int) (Double.parseDouble(parser.getValue(eEnd, "lng")) * 1E6));
        ViewMap.getMap().getOverlays().add(new DirectionPathOverlay(gp1, gp2));
    }
}
地质点gp1;
地质点gp2=零;
StringBuilder sb=新的StringBuilder();
某人附加(”http://maps.google.com/maps/api/directions/xml“”.append(“?origin=”).append(origin)
.append(“&destination=”).append(目的地)
.append(“&mode=driving&sensor=true&language=de”);
System.out.println(sb.toString());
xmlPaser parser=newxmlpaser();
字符串xml=parser.getXmlFromUrl(sb.toString());
Document doc=parser.XmlFromString(xml);
系统输出打印项次(doc);
NodeList start=doc.getElementsByTagName(“开始位置”);
NodeList end=doc.getElementsByTagName(“end_位置”);
对于(intLoop=0;intLoop
我如何在街道上画线? 谢谢你,我已经解决了这个问题。 如果其他人有同样的问题,我会发布这个答案

起点和终点位置只是路线的主要点。要绘制路线的详细视图,必须使用从xml到geoPoint的语法

为此,我使用了以下函数:

然后必须将地质点传递给绘制方法

你好