我正在尝试更新我的瓦片地图代码,使用iOS 7的
首先,这里是iOS 6的代码:AppleTileOverlay.m和TileOverlayView.m。当我用一个与其完全相同但是是
我正在测试的新部分是
地图瓦片大多数情况下都能正常加载,但日志会充斥着以下类似的消息:
MKTileOverlay
和MKTileOverlayRenderer
,我需要一些指针来使事情更好地运作。首先,这里是iOS 6的代码:AppleTileOverlay.m和TileOverlayView.m。当我用一个与其完全相同但是是
MKOverlayRenderer
的子类而不是MKOverlayView
的类替换TileOverlayView
时,它在iOS 7中仍然可以很好地工作。我正在测试的新部分是
MKTileOverlay
的子类,唯一的方法是:-(NSURL *)URLForTilePath:(MKTileOverlayPath)path {
NSString *tileKey = [[NSString alloc] initWithFormat:@"%d%d%d", path.x, path.y, path.z];
NSString *tilePath = [[NSBundle mainBundle] pathForResource:tileKey ofType:nil inDirectory:@"TileFolder"];
NSURL *url;
if (tilePath) {
url = [NSURL fileURLWithPath:tilePath];
}
return url;
}
地图瓦片大多数情况下都能正常加载,但日志会充斥着以下类似的消息:
Error loading URL (null): Error Domain=NSURLErrorDomain Code=-1000 "bad URL" UserInfo=0x1b3e19e0 {NSUnderlyingError=0x1894d470 "bad URL", NSLocalizedDescription=bad URL}
从返回URL为nil的方法中出现错误信息。
所以问题是:我能否避免这些错误消息,还是应该坚持使用我已有的旧叠加类?