代码之家  ›  专栏  ›  技术社区  ›  Babak Mahmoudabadi

osmdroid:找不到资源:markr_default.png

  •  2
  • Babak Mahmoudabadi  · 技术社区  · 10 年前

    我用osmdroid创建了一个简单的项目。我想在地图上显示一个特殊的点。 我在项目中使用以下库:

    1. osmdroid-android-4.3.jar
    2. slf4j-android-1.5.8.jar
    

    这是我的代码:

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    
        final MapView map = (MapView) findViewById(R.id.map);
    
        anotherOverlayItemArray = new ArrayList<OverlayItem>();
    
        anotherOverlayItemArray.add(new OverlayItem(
                "US", "US", new GeoPoint(38.883333, -77.016667)));
    
        ItemizedIconOverlay<OverlayItem> anotherItemizedIconOverlay = new ItemizedIconOverlay<OverlayItem>(
                this, anotherOverlayItemArray, null);
        map.getOverlays().add(anotherItemizedIconOverlay);
       }
    

    我收到以下错误:

    08-09 00:27:24.123:E/AndroidRuntime(4844):原因:java.lang.IllegalArgumentException:未找到资源:markr_default.png 08-09 00:27:24.123:E/AndroidRuntime(4844):位于org.osmdoid.DefaultResourceProxyImpl.getBitmap(DefaultResourceProxyImpl.java:114)

    我哪里出错了?

    2 回复  |  直到 10 年前
        1
  •  1
  •   Babak Mahmoudabadi    9 年前

    我发现了我的问题,是JAR文件添加引用不正确。 https://github.com/osmdroid/osmdroid/issues/145

        2
  •  0
  •   Gianluca Demarinis    9 年前

    添加此项:

        mMapView.setTileSource(new XYTileSource("MapQuest",
        ResourceProxy.string.mapquest_osm, 13, 19, 256, ".jpg", new String[]{
                "http://otile1.mqcdn.com/tiles/1.0.0/map/",
                "http://otile2.mqcdn.com/tiles/1.0.0/map/",
                "http://otile3.mqcdn.com/tiles/1.0.0/map/",
                "http://otile4.mqcdn.com/tiles/1.0.0/map/"}));
    

    13是最小变焦

    19是最大变焦