我想用osmdroid在android中显示WMS。我写了这段代码。但它没有回答。怎么了?你能给我指路吗?谢谢
public class OSMFragmentTest extends Activity {
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.frafment_layout_test);
MapView map = (MapView) findViewById(R.id.osm_wms_1);
WMSTileSource wmsTileSource;
wmsTileSource = new WMSTileSource( "OGC:WMS", new String[]{"http://ows.terrestris.de/osm/wms"},"SRTM30-Hillshade","1.1.1","EPSG:4326","",5 );
map.setTileSource(wmsTileSource);
map.setBuiltInZoomControls(true);
map.setMultiTouchControls(true);
GeoPoint startPoint = new GeoPoint(37.1, 57.01);
IMapController mapController = map.getController();
mapController.setZoom(9);
mapController.setCenter(startPoint);
}
}发布于 2019-06-27 20:10:08
osmdroid对wms的支持还处于测试阶段。也就是说,示例应用程序中有一个示例,并且有一个wiki页面对此进行了讨论。
https://github.com/osmdroid/osmdroid/wiki/WMS-Support
这是示例应用程序的源代码,它提示用户输入服务器,获取层,询问用户要显示哪个层,然后显示它。
还有一种类似于您的代码的方法,前提是tiles服务器可以使用边界、缩放和投影来服务于tiles,但需要做更多的工作。
https://stackoverflow.com/questions/56778728
复制相似问题