2017-03-06 44 views
0

我是Android和MapBox的新手,所以解决方案可能很明显,我只是没有看到它。MapBox SDK RouteLeg不包含任何信息

我正在尝试为Android使用MapBox实现转弯转向类型的应用程序。我已经能够想出如何创建路线,在路线之后绘制多段线,并让用户沿着折线行进,并在用户离开折线时重新路由。但是,由于某种原因,当我试图从RouteLeg的RouteLeg中获得下一个RouteStep时,RouteStep数组变为空,我不知道为什么会发生这种情况。我已经发布了我在下面讨论的代码部分。

  currentRoute = response.body().getRoutes().get(0); 
      Log.d(TAG, "Distance: " + currentRoute.getDistance()); 
      Toast.makeText(
        FollowRouteActivity.this, 
        "Route is " + currentRoute.getDistance() + " meters long.", 
        Toast.LENGTH_SHORT).show(); 

      RouteLeg routeLeg = currentRoute.getLegs().get(0); 
      Log.d(TAG, "Next route leg distance: " + routeLeg.getDistance()); 
      if (routeLeg.getSteps().size() > 0) 
       Log.d(TAG, "Next route step distance: " + routeLeg.getSteps().get(0).getDistance()); 
      else 
       Log.d(TAG, "Next route step: No step found"); 

      drawRoute(currentRoute); 

此代码片段始终显示日志中的“下一个路由步骤:找不到步骤”。

谢谢您的帮助!

+0

还应该提到currentRoute.getDistance()返回正确的距离,并且当currentRoute传递给drawRoute()时,正在绘制多段线。 – user1467883

回答

0

在您的指示请求中,您是否将setSteps()设置为true?这应该导致在其他信息中提供文本指示。