iOS7:MKTileOverlayRenderer,分幅大小大于256

iOS7:MKTileOverlayRenderer,分幅大小大于256,ios7,mkmapview,mktileoverlay,Ios7,Mkmapview,Mktileoverlay,我想在MKTileOverlay/MKTileOverlay渲染器中使用512x512像素的自定义贴图分幅。我的自定义MKTileOverlayRenderer绘制每个帧的边框,如下所示: -(void)drawMapRect:(MKMapRect)mapRect zoomScale:(MKZoomScale)zoomScale inContext:(CGContextRef)context { CGRect rect = [self rectForMapRect:mapRect];

我想在MKTileOverlay/MKTileOverlay渲染器中使用512x512像素的自定义贴图分幅。我的自定义MKTileOverlayRenderer绘制每个帧的边框,如下所示:

-(void)drawMapRect:(MKMapRect)mapRect zoomScale:(MKZoomScale)zoomScale inContext:(CGContextRef)context
{
    CGRect rect = [self rectForMapRect:mapRect];
    CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);
    CGContextSetLineWidth(context, 1.0/zoomScale);
    CGContextStrokeRect(context, rect);
}
平铺大小的设置方式如下:

self.tileOverlay.tileSize = CGSizeMake(512, 512);
这适用于大小为128或256的瓷砖。但对于512(或更大)的大小,每个磁贴之间存在“未使用”的空间,磁贴大小保持在256像素,如图所示:


如何绘制完整的512像素磁贴?

这在iOS 7中似乎是一个错误,但在iOS 8中可以正常工作。我正在研究一种替代
MKTileOverlayRenderer
的方法来解决这一问题,以及iOS 8中存在另一个导致核心图形图像绘制错误的bug这一事实。