概要
GMSURLTileProvider は、GMSTileURLConstructor から返された URL に基づいてタイルをフェッチします。
次に例を示します。
GMSTileURLConstructor constructor = ^(NSUInteger x, NSUInteger y, NSUInteger zoom) { NSString *URLStr = [NSString stringWithFormat:"https://example.com/%d/%d/%d.png", x, y, zoom]; return [NSURL URLWithString:URLStr]; }; GMSTileLayer *layer = [GMSURLTileLayer tileLayerWithURLConstructor:constructor]; layer.userAgent = "SDK user agent"; layer.map = map;
GMSURLTileProvider はサブクラス化できず、コンビニエンス コンストラクタでのみ作成する必要があります。
GMSTileLayer を継承します。
パブリック メンバーの関数 | |
(void) | - requestTileForX:y:zoom:receiver: |
requestTileForX:y:zoom:receiver: GMSTileOverlay の画像タイルを生成します。 | |
(void) | - clearTileCache |
キャッシュをクリアして、すべてのタイルが再度リクエストされるようにします。 | |
静的パブリック メンバー関数 | |
(instancetype) | + tileLayerWithURLConstructor: |
コンビニエンス コンストラクタ。 | |
プロパティ | |
NSString * | userAgent |
アプリケーションを記述するユーザー エージェントを指定します。 | |
GMSMapView * | map |
この GMSTileOverlay が表示される地図。 | |
整数 | zIndex |
zIndex 値の大きいタイルレイヤは、低い zIndex 値のタイルレイヤとオーバーレイの上に描画されます。 | |
NSInteger | tileSize |
返されるタイル画像の表示に使用するピクセル数(ポイントではない)を指定します。 | |
浮動小数点数 | 不透明度 |
タイルレイヤの不透明度を指定します。 | |
BOOL | fadeIn |
タイルをフェードインするかどうかを指定します。 | |
関連関数 | |
(これらはメンバー関数ではありません)。 | |
typedef NSURL *_Nullable(^ | GMSTileURLConstructor(NSUInteger x, NSUInteger y, NSUInteger ズーム) |
GMSTileURLConstructor は、x 、y 、zoom を受け取り、NSURL を返すブロックです。その場所にタイルがないことを示す nil を返します。 |
メンバー関数のドキュメント
+ (instancetype) tileLayerWithURLConstructor: | (GMSTileURLConstructor) | コンストラクタ |
コンビニエンス コンストラクタ。
constructor
は nil 以外でなければなりません。
- (void) requestTileForX: | (NSUInteger) | x | |
y: | (NSUInteger) | y | |
Zoom: | (NSUInteger) | ズーム | |
receive: | (id< GMSTileReceiver >) | レシーバー | |
requestTileForX:y:zoom:receiver: GMSTileOverlay の画像タイルを生成します。
サブクラスでオーバーライドする必要があります。指定された x
、y
、zoom
のタイルは、後で receiver
に渡す必要があります。
この位置で使用できるタイルがない場合は、kGMSTileLayerNoTile を指定します。一時的なエラーが発生し、タイルが後で使用可能になる場合は、nil が返されます。
このメソッドの呼び出しはメインスレッドで行われます。アプリのメインスレッドで実行されないブロッキング タイルレイヤを実装する基本クラスについては、GMSSyncTileLayer をご覧ください。
- (void) clearTileCache: |
キャッシュをクリアして、すべてのタイルが再度リクエストされるようにします。
フレンドと関連関数のドキュメント
- (typedef NSURL* _Nullable(^ GMSTileURLConstructor)(NSUInteger x, NSUInteger y, NSUInteger zoom)) [related] |
GMSTileURLConstructor
は、x
、y
、zoom
を受け取り、NSURL を返すブロックです。その場所にタイルがないことを示す nil を返します。
プロパティのドキュメント
- (NSString*) userAgent [read, write, copy] |
アプリケーションを記述するユーザー エージェントを指定します。
これが nil(デフォルト)の場合、デフォルトの iOS ユーザー エージェントが HTTP リクエストに使用されます。
- (GMSMapView*) 地図 [read, write, assign, inherited] |
この GMSTileOverlay が表示される地図。
このプロパティを設定すると、レイヤが地図に追加されます。nil に設定すると、このレイヤが地図から削除されます。レイヤは、最大 1 つの地図で同時にアクティブにできます。
-(int)zIndex [read, write, assign, inherited] |
zIndex
値の大きいタイルレイヤは、低い zIndex
値のタイルレイヤとオーバーレイの上に描画されます。
値が等しい場合、描画順序は未定義になります。
-(NSInteger)tileSize [read, write, assign, inherited] |
返されるタイル画像の表示に使用するピクセル数(ポイントではない)を指定します。
最良の結果を得るには、カスタムタイルの端の長さにする必要があります。デフォルトは 256 です。これは、Google マップ タイルの従来のサイズです。
128 ポイントに相当しない値(Retina デバイスの場合は 256 ピクセルなど)は、うまく機能しない可能性があるため、推奨されません。
例として、アプリケーション開発者は、Retina デバイス上に Retina タイル(512 ピクセルの端長)を提供し、非 Retina デバイスでのデフォルト値の 256 と同じビューあたりのタイル数を維持したいと考えるかもしれません。
- (浮動小数点数)不透明度 [read, write, assign, inherited] |
タイルレイヤの不透明度を指定します。
これにより、タイル画像のアルファ チャンネルの乗数が得られます。
- (BOOL) fadeIn [read, write, assign, inherited] |
タイルをフェードインするかどうかを指定します。
デフォルトは YES です。