概览
GMSTileLayer是一个抽象类,允许在指定的GMSMapView上叠加自定义图片图块。
它不能直接初始化,子类必须实现 tileForX:y:zoom: 方法才能返回图块。
缩放级别为 0 时,整个世界是单个图块覆盖的方形,且该图块的坐标 x
和 y
均为 0。缩放级别为 1 时,世界由 4 个图块覆盖,其中 x
和 y
为 0 或 1,依此类推。
由 GMSSyncTileLayer 和 GMS网址TileLayer 继承。
公开成员函数 | |
(void) | - requestTileForX:y:zoom:receiver: |
requestTileForX:y:zoom:receiver: 为 GMSTileOverlay 生成图像图块。 | |
(void) | - clearTileCache |
清除缓存,以便再次请求所有图块。 | |
属性 | |
GMSMapView * | map |
显示此 GMSTileOverlay 的地图。 | |
整型 | Z-index |
值较高的 zIndex 图块层会在 zIndex 值较低的图块层及叠加层之上绘制。 | |
NSInteger | tileSize |
指定返回的图块图片优先显示时的像素数(而不是点数)。 | |
浮点数 | 不透明度 |
指定图块层的不透明度。 | |
BOOL | fadeIn |
指定图块是否应淡入。 |
成员函数文档
- (void) requestTileForX: | (NSUInteger) | x | |
y: | (NSUInteger) | 年 | |
缩放: | (NSUInteger) | 缩放 | |
接收器: | (ID< GMSTileReceiver >) | 接收器 | |
requestTileForX:y:zoom:receiver: 为 GMSTileOverlay 生成图像图块。
必须替换为子类。给定 x
、y
和 zoom
的图块必须__稍后传递给 receiver
。
如果此位置没有可用图块,请指定 kGMSTileLayerNoTile;如果发生暂时性错误,且图块以后可能可用,则为 nil。
此方法的调用将在主线程上进行。有关实现不会在应用主线程中运行的屏蔽图块层的基类,请参阅 GMSSyncTileLayer。
-(空)clearTileCache |
清除缓存,以便再次请求所有图块。
属性说明
- (GMSMapView*) 地图 [read, write, assign] |
显示此 GMSTileOverlay 的地图。
设置此属性会将图层添加到地图中。将其设置为 nil 可删除此图层。在任何给定时间,一个图层最多可在一个地图上激活。
-(整数)zIndex [read, write, assign] |
值较高的 zIndex
图块层会在 zIndex
值较低的图块层及叠加层之上绘制。
相同的值会导致未定义的绘制顺序。
-(NSInteger)tileSize [read, write, assign] |
指定返回的图块图片优先显示时的像素数(而不是点数)。
为获得最佳效果,这应该是自定义图块的边缘长度。默认值为 256,这是 Google 地图图块的传统大小。
如果值低于 128 点(例如视网膜显示设备上的 256 像素),则效果可能不太理想,因此不建议这样做。
例如,应用开发者可能想在 Retina 设备上提供 Retina 图块(边缘宽度为 512 像素),以保持每个视图的图块数量与非 Retina 设备上的默认值相同(256 像素)。
-(浮点)不透明度 [read, write, assign] |
指定图块层的不透明度。
这为平铺图像的 alpha 通道提供了乘数。
- (BOOL) fadeIn [read, write, assign] |
指定图块是否应淡入。
默认值为 YES。