当前位置: 首页 > 知识库问答 >
问题:

如何使用osmdroid namignmpoiProvider让一些公交车站靠近我的位置

百里海超
2023-03-14

我正试图使用osmdroidnamignmpoiProvider将一些公交车站靠近我的位置,但我收到以下NullException

JAVAlang.IllegalArgumentException:south必须位于org的[-85.05112877980658,85.05112877980658]中。osmdroid。util。边界框。set(BoundingBox.java:69)。

我确信坐标不会有任何点靠近我的位置

这就是我实现逻辑的方法

 public  void poinOfInt(View view){

     bus_stop = myLocationNewOverlay.getMyLocation();

       NominatimPOIProvider poiProvider = new NominatimPOIProvider( BuildConfig.APPLICATION_ID);
       ArrayList<POI> pois = poiProvider.getPOICloseTo(bus_stop, "highway", 50, 100);


      FolderOverlay poiMarkers = new FolderOverlay();
      map.getOverlays().add(poiMarkers);

      Drawable poiIcon = getResources().getDrawable(R.drawable.marker_default);
      for (POI poi:pois){
          Marker poiMarker = new Marker(map);
          poiMarker.setTitle(poi.mType);
          poiMarker.setSnippet(poi.mDescription);
          poiMarker.setPosition(poi.mLocation);
          poiMarker.setIcon(poiIcon);
         /* if (poi.mThumbnail != null){
            poiItem.setImage(new BitmapDrawable(poi.mThumbnail));
          }*/
         poiMarkers.add(poiMarker);
      }
    }

我收到以下错误:

E/AndroidRuntime:致命异常:主进程:com。实例西邦巴,PID:6617爪哇。lang.IllegalStateException:无法为android执行方法:在android上单击onClick。支持v7。应用程序。AppCompativeViewInflater$DeclaredOnClickListener。android上的onClick(appcompativiewInflater.java:390)。看法看法android上的performClick(View.java:4754)。看法查看$PerformClick。在android上运行(View.java:19605)。操作系统。处理程序。android上的handleCallback(Handler.java:733)。操作系统。处理程序。android上的dispatchMessage(Handler.java:95)。操作系统。活套。android上的loop(Looper.java:146)。应用程序。活动线程。java上的main(ActivityThread.java:5752)。朗。反思。方法java上的invokenactive(本机方法)。朗。反思。方法在com上调用(Method.java:515)。Android内部的操作系统。ZygoteInit$MethodandArgscaler。在com上运行(ZygoteInit.java:1291)。Android内部的操作系统。合子体。dalvik的main(ZygoteInit.java:1107)。系统原生艺术。main(本机方法)由以下原因引起:java。朗。反思。java上的InvocationTargetException。朗。反思。方法java上的invokenactive(本机方法)。朗。反思。方法在android上调用(Method.java:515)。支持v7。应用程序。AppCompativeViewInflater$DeclaredOnClickListener。android上的onClick(appcompativiewInflater.java:385)。看法看法performClick(View.java:4754)

共有2个答案

施梓
2023-03-14

提供设置公共汽车站地质点的代码。

(顺便说一句,搜索“高速公路”不会得到公共汽车站)

宇文俊风
2023-03-14

poiProvider.getPOICloseTo方法的最后一个参数应该是度数(文档说:“最大位置距离,度数。请注意,它是用来围绕位置构建一个边界框的,而不是一个圆。")。您通过了100,这对于学位来说是相当高的值,所以您可能假设这些是公里或米。尝试较小的值,例如,0.10.2或类似的示例。

 类似资料:
  • 我有如下结构的数据库。如何在5公里内location_id。有纬度和经度的数字已经在数据库表中。请参阅我的数据库结构图像。 以下是数据库结构图像: 我已经从这个链接搜索如何找到最近的位置使用纬度和经度从sql数据库?我不明白密码。 SELECT id,(3959*acos(cos(弧度(37))*cos(弧度(lat ) ) * cos(弧度(lng)-弧度(-122))sin(弧度(37))*s

  • 本文向大家介绍android实现查询公交车还有几站的功能,包括了android实现查询公交车还有几站的功能的使用技巧和注意事项,需要的朋友参考一下  上一篇文章介绍了如何在Android平台上利用百度地图进行定位,接下来就介绍一下在获取的定位功能的基础上采用百度地图来获取周边的公交信息。 这里采用如上文同样的方式,单独写一个类,该类是对周边搜索功能的封装,NearbySearchHelper。该类

  • 问题内容: 我正在尝试提出最有效的数据库。我的巴士路线都大约有10个站。公交车从第一路开始直到到达第十站,然后再次返回。这个周期每天发生3次。 我对于如何有效地生成公交时间以及应该在哪里存储停靠站感到非常困惑。如果将所有停靠点放在一个字段中,将时间停在另一个字段中,则数据库将不会非常动态。 如果我将所有停靠点一一存储在一个列中,然后再将时间停在另一列中,由于一个停靠点有多次重复,因此在向下的位置会

  • 我尝试了多种方法来运行它。目的是绘制用户可以点击的圆圈。我无法在JGroup上绘制任何东西。我最初是在扩展JFrame,但意识到我需要扩展JGroup。我正在使用IntelliJ GUI Designer进行布局。我将非常感谢任何帮助。 这是IntelliJ表单设计器文件。 https://pastebin.com/Z3b0PVtZ

  • 问题内容: 我正在编写一个脚本,其中将业务量以纬度和经度加载到mySQL数据库中。然后,我向该脚本提供一个(最终用户的)经度纬度,并且该脚本必须计算从提供的经度/经度到它从数据库中获得的条目的EACH的距离,并按从最远到最远的顺序对其进行排序。 实际上,我实际上只需要大约10或20个“最近”的结果,但是除了从数据库中获取所有结果并对每个结果运行函数然后进行数组排序之外,我什么也想不做。 这是我已经

  • 怎么让每一列的间距尽量缩到最小,最好是都靠内容撑开。