總覽
GMSTileLayer是一個抽象類別,可以在指定的 GMSMapView 上疊加自訂影像方塊。
這個函式無法直接初始化,且子類別必須實作 tileForX:y:zoom: 方法以傳回資訊方塊。
縮放等級為 0 時,整個世界是包含一個圖塊的正方形,而座標 x
和 y
都是該圖塊的 0。縮放等級為 1 時,全世界會覆蓋 4 個圖塊,其中 x
和 y
為 0 或 1,以此類推。
由GMSSyncTileLayer和 GMSURLTileLayer 所繼承。
公開成員函式 | |
(void) | - requestTileForX:y:zoom:receiver: |
requestTileForX:y:zoom:receiver:為 GMSTileOverlay 產生影像圖塊。 | |
(void) | - clearTileCache |
清除快取,讓系統再次要求所有圖塊。 | |
資源 | |
GMSMapView * | 地圖 |
這個 GMSTileOverlay 顯示的地圖。 | |
int | zIndex |
較高的 zIndex 值圖塊圖層會繪製在較低的 zIndex 值圖塊圖層和疊加層之上。 | |
NSInteger | tileSize |
指定傳回的圖塊圖片偏好的顯示方式像素數 (非點)。 | |
float | 不透明度 |
指定圖塊圖層的不透明度。 | |
BOOL | fadeIn |
指定圖塊是否應淡入, |
成員函式說明文件
- (void) requestTileForX: | (NSUInteger) | x | |
Y: | (NSUInteger) | 年 | |
縮放: | (NSUInteger) | 放大 | |
接收器: | (id<GMSTileReceiver >) | 接收端 | |
requestTileForX:y:zoom:receiver:為 GMSTileOverlay 產生影像圖塊。
必須由子類別覆寫。指定 x
、y
和 zoom
的圖塊稍後_必須_傳遞至 receiver
。
如果沒有此位置適用的動態磚,請指定 kGMSTileLayerNoTile;如果發生暫時性錯誤,並且可以稍後取得地圖方塊,則指定 nil。
對這個方法的呼叫將在主執行緒上進行。請參閱GMSSyncTileLayer的基礎類別,做為實作一個不在應用程式主執行緒上執行的阻塞地圖方塊圖層。
- (void) clearTileCache |
清除快取,讓系統再次要求所有圖塊。
資源說明文件
- (GMSMapView*) 地圖 [read, write, assign] |
這個 GMSTileOverlay 顯示的地圖。
設定此屬性會將圖層加入地圖。設為 nil 會移除地圖中的這個圖層。無論何時,圖層在最多一個地圖中仍為有效。
- (整數) zIndex [read, write, assign] |
較高的 zIndex
值圖塊圖層會繪製在較低的 zIndex
值圖塊圖層和疊加層之上。
等值會產生未定義的繪製順序。
- (NSInteger) tileSize [read, write, assign] |
指定傳回的圖塊圖片偏好的顯示方式像素數 (非點)。
為獲得最佳效果,這個值應該是自訂圖塊的邊緣長度。預設值為 256,這是 Google 地圖圖塊的傳統大小。
如果值低於 128 點 (例如 Retina 裝置為 256 像素),可能就無法獲得良好成效,因此不建議使用。
舉例來說,應用程式開發人員可能希望在 Retina 裝置上提供視網膜圖塊 (長度為 512 像素邊緣),以便讓每個檢視畫面的圖塊數量與非 Retina 裝置的預設值相同。
- (浮點值) 不透明度 [read, write, assign] |
指定圖塊圖層的不透明度。
這會為圖塊圖片的 Alpha 通道提供調節係數。
- (BOOL) fadeIn [read, write, assign] |
指定圖塊是否應淡入,
預設值為「是」。