我正在尝试使用新的MKTileOverlay 7测试版中提供的MKTileOverlayRenderer和iOS在苹果地图视图上添加Mapbox平铺层或Mapbox服务器地图。我在网上找到的一些示例代码中添加了自己的信息,以便在地图视图上加载服务器映射,但这会产生一个错误,需要帮助解释。我得到的错误,使用未声明的标识符‘覆盖’。
//.h
@property (strong, nonatomic) IBOutlet MKMapView *mapView;
//.m
NSString *template = @"jbailo.Lighting/tile?z={z}&x={x}&y={y}";
overlay = [[MKTileOverlay alloc ] initWithURLTemplate:template];
overlay.canReplaceMapContent = YES;
[_mapView addOverlay:overlay level:MKOverlayLevelAboveRoads];
-(MKTileOverlayRenderer *)mapView:(MKMapView*)mapView rendererForOverlay:(id<MKOverlay>)overlay {
return [[MKTileOverlayRenderer alloc] initWithOverlay:overlay];
}请告诉我什么,我应该声明覆盖,如果有人有经验使用这些tileOverlays方法,随时提供意见和建议。
发布于 2013-09-25 13:48:38
发布于 2013-09-27 08:56:51
你没有宣布覆盖,愚蠢的错误
替换这一行
overlay = [MKTileOverlay alloc initWithURLTemplate:template];
使用
MKTileOverlay overlay = [MKTileOverlay alloc initWithURLTemplate:template];
此外,也可以签出url,您可以使用下面的示例:http://c.tile.openstreetmap.org/4/2/6.png
也不要使用级别: MKOverlayLevelAboveRoads for MKTileOverlay,而使用MKOverlayLevelAboveLabels
https://stackoverflow.com/questions/18580755
复制相似问题