Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios MKMap don';t显示开放式街道地图平铺覆盖图_Ios_Xamarin.ios_Maps_Mkmapview_Openstreetmap - Fatal编程技术网

Ios MKMap don';t显示开放式街道地图平铺覆盖图

Ios MKMap don';t显示开放式街道地图平铺覆盖图,ios,xamarin.ios,maps,mkmapview,openstreetmap,Ios,Xamarin.ios,Maps,Mkmapview,Openstreetmap,我尝试在Xamarin iOS的MKMapView上将OSM瓷砖显示为苹果地图上方的图层 private MKTileOverlay _tileOverlay; ...... public override void ViewDidLoad () { ..... MapDelegate _mapDelegate = new MapDelegate (); map.Delegate = _mapDelegate; ..... String urlTemplate = "ht

我尝试在Xamarin iOS的MKMapView上将OSM瓷砖显示为苹果地图上方的图层

private MKTileOverlay _tileOverlay;
...... 
public override void ViewDidLoad ()
{
  .....
  MapDelegate _mapDelegate = new MapDelegate ();
  map.Delegate = _mapDelegate;
  .....

  String urlTemplate = "http://tile.openstreetmap.org/{z}/{x}/{y}.png";
  _tileOverlay = new MKTileOverlay(urlTemplate);
  _tileOverlay.CanReplaceMapContent = true;
  map.AddOverlay(_tileOverlay, MKOverlayLevel.AboveLabels);

  .....
}
并在类“MapDelegate:MKMapViewDelegate”中重写OverlyRenderer


运行应用程序时,我看到一个没有OSM的空白层

您正在运行什么版本的iOS

由于苹果的应用程序传输安全(ATS)在默认情况下需要使用HTTPS

如果您想(或需要)使用HTTP,则必须编辑
Info.plist
,以允许特定(或全局)使用HTTP。更多详情请参见Xamarin's

public override MKOverlayRenderer OverlayRenderer (MKMapView mapView, IMKOverlay overlay)
    {
        if (overlay is MKTileOverlay) 
        {
            var tile = (MKTileOverlay)overlay;
            var renderer = new MKTileOverlayRenderer (tile) {
            };

            return renderer;
        }
        return null;
    }