概要
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 |
すべてのタイルが再度リクエストされるようにキャッシュをクリアします。 | |
静的パブリック メンバー関数 | |
(インスタンス タイプ) | + tileLayerWithURLConstructor: |
コンストラクタ。 | |
プロパティ | |
NSString * | userAgent |
アプリケーションを説明するユーザー エージェントを指定します。 | |
GMSMapView * | map |
この GMSTileOverlay が表示される地図 | |
int | Z-index |
高い値 zIndex のタイルレイヤが、低い値 zIndex のタイルレイヤとオーバーレイの上に描画されます。 | |
NSInteger | tileSize |
返されたタイル画像が優先して表示するピクセル数(ポイントではない)を指定します。 | |
浮動小数点数 | 不透明度 |
タイルレイヤの不透明度を指定します。 | |
BOOL | フェードイン |
タイルをフェードインするかどうかを指定します。 | |
関連関数 | |
(これらはメンバー関数ではありません)。 | |
typedef NSURL *_Nullable(^ | GMSTileURLConstructor)(NSUInteger x、NSUInteger y、NSUInteger ズーム) |
GMSTileURLConstructor は、x 、y 、zoom を受け取って NSURL を返すブロックです。その場所のタイルがない場合は nil を返します。 |
メンバー関数のドキュメント
+(インスタンス タイプ)tileLayerWithURLConstructor: | (GMSTileURLConstructor) | コンストラクタ |
コンストラクタ。
constructor
は、9 以外の値にする必要があります。
- (void) requestTileForX: | (NSUInteger) | x | |
y: | (NSUInteger) | y | |
ズーム: | (NSUInteger) | ズーム | |
受信者: | (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(デフォルト)の場合、HTTP リクエストに対してデフォルトの iOS ユーザー エージェントが使用されます。
- GMSMapView* map [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 です。