3

我想将 512x512 像素的自定义地图图块与 MKTileOverlay/MKTileOverlayRenderer 一起使用。我的自定义 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 像素

如何绘制完整的 512 像素图块?

4

0 回答 0