概要
これは Google Maps SDK for iOS のメインクラスであり、地図に関連するすべてのメソッドのエントリ ポイントです。
地図は、コンストラクタ -init または -initWithOptions: のいずれかを使用してインスタンス化する必要があります。
GMSMapView は、すべての UIKit オブジェクトと同様に、メインスレッドからのみ読み取りや変更が可能です。これらのメソッドを別のスレッドから呼び出すと、例外または未定義の動作が発生します。
パブリック メンバー関数 | |
(instancetype) | - init |
CGRectZero とデフォルトのオプションで初期化します。 | |
(instancetype) | - initWithOptions: |
指定されたオプションで新しい地図表示を作成します。 | |
(instancetype) | - initWithFrame: |
(instancetype) | - initWithCoder: |
(instancetype) | - initWithFrame:camera: |
フレームとカメラ ターゲットを含むマップビューをビルドして返します。 | |
(instancetype) | - initWithFrame:mapID:camera: |
フレーム、マップ ID、カメラ ターゲットを含むマップビューをビルドして返します。 | |
(void) | - startRendering |
レンダラの電源をオンにするよう、この地図に指示します。 | |
(void) | - stopRendering |
レンダラの電源をオフにするようこの地図に指示します。 | |
(void) | - クリア |
マーカー、ポリライン、地面オーバーレイなど、地図に追加されているすべてのマークアップを消去します。 | |
(void) | - setMinZoom:maxZoom: |
minZoom と maxZoom を設定します。 | |
(nullable GMSCameraPosition *) | - cameraForBounds:insets: |
padding で bounds を提示する GMSCameraPosition をビルドします。 | |
(void) | - moveCamera: |
update に応じてカメラを変更します。 | |
(BOOL) | - areEqualForRenderingPosition:position: |
内部で使用される精度と変換レベルを考慮して、指定されたカメラ位置によってカメラが実質的に同じようにレンダリングされるかどうかを確認します。 | |
(GMSFeatureLayer < GMSPlaceFeature * > *) | - featureLayerOfFeatureType: |
指定されたタイプの対象物レイヤを返します。 | |
(void) | - animateToCameraPosition: |
この地図のカメラを cameraPosition にアニメーション化します。 | |
(void) | - animateToLocation: |
animateToCameraPosition: と同様ですが、カメラの位置のみを変更します(つまり、現在の場所から location に変更します)。 | |
(void) | - animateToZoom: |
animateToCameraPosition: と同様ですが、カメラのズームレベルのみを変更します。 | |
(void) | - animateToBearing: |
animateToCameraPosition: と同様ですが、カメラの方向指定のみ(度数)を変更します。 | |
(void) | - animateToViewingAngle: |
animateToCameraPosition: と同様ですが、カメラの傾斜角(度数)のみを変更します。 | |
(void) | - animateWithCameraUpdate: |
cameraUpdate を現在のカメラに適用し、animateToCameraPosition: に従って結果を使用します。 | |
静的パブリック メンバー関数 | |
(instancetype) | + mapWithFrame:camera: |
フレームとカメラ ターゲットを含むマップビューをビルドして返します。 | |
(instancetype) | + mapWithFrame:mapID:camera: |
フレーム、マップ ID、カメラ ターゲットを含むマップビューを作成して返すコンビニエンス イニシャライザ。 | |
プロパティ | |
IBOutlet ID< GMSMapViewDelegate > | 委任 |
GMSMapView デリゲートします。 | |
GMSCameraPosition * | camera |
カメラを制御し、地図の向きを指定します。 | |
GMSProjection * | projection |
画面の座標と緯度と経度の座標間の変換に使用できる GMSProjection オブジェクトを返します。 | |
BOOL | myLocationEnabled |
現在地を示す点と精度の円を有効にするかどうかを制御します。 | |
CLLocation * | myLocation |
現在地機能が有効になっている場合は、デバイスの位置情報のドットが描画されている場所が表示されます。 | |
GMSMarker * | selectedMarker |
選択されているマーカー。 | |
BOOL | trafficEnabled |
地図に交通データを描画するかどうかを指定します(利用可能な場合)。 | |
GMSMapViewType | mapType |
表示する地図タイルのタイプを制御します。 | |
GMSMapStyle * | mapStyle |
地図のスタイルを制御します。 | |
float | minZoom |
最小ズーム(カメラをズームアウトできる最大距離)。 | |
float | maxZoom |
最大ズーム(カメラが地球に最も近いズームレベル)。 | |
BOOL | buildingsEnabled |
設定すると、利用可能な場合に建物が 3D 表示されます。 | |
BOOL | indoorEnabled |
利用可能な場合にインドアマップを表示するかどうかを設定します。 | |
GMSIndoorDisplay * | indoorDisplay |
屋内データ表示のさまざまな要素を監視または制御できる GMSIndoorDisplay インスタンスを取得します。 | |
GMSUISettings * | 設定 |
地図のユーザー インターフェース設定を制御する GMSUISettings オブジェクトを取得します。 | |
UIEdgeInsets | パディング |
ビューの「表示」領域を制御します。 | |
GMSMapViewPaddingAdjustmentBehavior | paddingAdjustmentBehavior |
セーフエリアのインセットをパディング値に追加する方法を制御します。 | |
BOOL | accessibilityElementsHidden |
デフォルトは YES です。 | |
GMSMapLayer * | レイヤ |
レイヤに使用されるカスタム CALayer タイプのアクセサー。 | |
GMSFrameRate | preferredFrameRate |
レンダリングのフレームレートをコントロールします。 | |
GMSCoordinateBounds * | cameraTargetBounds |
nil でない場合、カメラ ターゲットが制約され、操作によって指定された境界外に出ることがなくなります。 | |
GMSMapCapabilityFlags | mapCapabilities |
現時点で条件付きで利用できる(mapID などの地図設定に依存する)すべての機能。 | |
関連する関数 | |
(これらはメンバー関数ではないことに注意してください)。 | |
NSString *const | kGMSAccessibilityCompass |
コンパスボタンのユーザー補助 ID。 | |
NSString *const | kGMSAccessibilityMyLocation |
「現在地」ボタンのユーザー補助 ID。 | |
NSString *const | kGMSAccessibilityOutOfQuota |
「容量不足」エラーラベルのユーザー補助 ID。 |
メンバー関数のドキュメント
- (instancetype) init |
CGRectZero とデフォルトのオプションで初期化します。
- (instancetype) initWithOptions: | (nonnull GMSMapViewOptions *) | options |
指定されたオプションで新しい地図表示を作成します。
オプション オブジェクトの値はこのメソッドによってコピーされます。
- (instancetype) initWithFrame: | (CGRect) | フレーム |
- (instancetype) initWithCoder: | (NSCoder *) | コーダー |
+ (instancetype) mapWithFrame: | (CGRect) | フレーム | |
camera: | (GMSCameraPosition *) | camera | |
フレームとカメラ ターゲットを含むマップビューをビルドして返します。
+ (instancetype) mapWithFrame: | (CGRect) | フレーム | |
mapID: | (GMSMapID *) | mapID | |
camera: | (GMSCameraPosition *) | camera | |
フレーム、マップ ID、カメラ ターゲットを含むマップビューを作成して返すコンビニエンス イニシャライザ。
- (instancetype) initWithFrame: | (CGRect) | フレーム | |
camera: | (GMSCameraPosition *) | camera | |
フレームとカメラ ターゲットを含むマップビューをビルドして返します。
- 注:
- これは非推奨になりました。代わりに -init または -initWithOptions: を使用してください。
- (instancetype) initWithFrame: | (CGRect) | フレーム | |
mapID: | (GMSMapID *) | mapID | |
camera: | (GMSCameraPosition *) | camera | |
フレーム、マップ ID、カメラ ターゲットを含むマップビューをビルドして返します。
- 注:
- これは非推奨になりました。代わりに -init または -initWithOptions: を使用してください。
- (void) startRendering |
レンダラの電源をオンにするよう、この地図に指示します。
これはオプションであり、べき等です。
- 注:
- これは非推奨になりました。このメソッドは廃止されており、今後のリリースで削除される予定です。
- (void) stopRendering |
レンダラの電源をオフにするようこの地図に指示します。
これはオプションであり、べき等です。
- 注:
- これは非推奨になりました。このメソッドは廃止されており、今後のリリースで削除される予定です。
- (void) clear(クリア) |
マーカー、ポリライン、地面オーバーレイなど、地図に追加されているすべてのマークアップを消去します。
この操作を行っても、表示されている場所のドットがクリアされたり、現在の mapType がリセットされたりすることはありません。
- (void) setMinZoom: | (float) | minZoom | |
maxZoom: | (float) | maxZoom | |
minZoom
と maxZoom
を設定します。
このメソッドは、最小値が最大値以下であると想定し、そうでない場合は NSRangeException という名前で例外をスローします。
- (nullable GMSCameraPosition *) cameraForBounds: | (GMSCoordinateBounds *) | 境界 | |
インセット: | (UIEdgeInsets) | insets | |
padding
で bounds
を提示する GMSCameraPosition をビルドします。
カメラの向きはゼロで、傾斜は 0 になります(つまり、北を向き、地面を正面から見ています)。ここでは、この GMSMapView のフレームとパディングが考慮されます。
境界が無効な場合、このメソッドは nil カメラを返します。
- (void) moveCamera: | (GMSCameraUpdate *) | update |
update
に応じてカメラを変更します。
カメラの変更は瞬時に行われます(アニメーションはありません)。
- (BOOL) areEqualForRenderingPosition: | (GMSCameraPosition *) | position | |
position: | (GMSCameraPosition *) | otherPosition | |
内部で使用される精度と変換レベルを考慮して、指定されたカメラ位置によってカメラが実質的に同じようにレンダリングされるかどうかを確認します。
- (GMSFeatureLayer<GMSPlaceFeature *> *) featureLayerOfFeatureType: | (GMSFeatureType) | featureType |
指定されたタイプの対象物レイヤを返します。
対象物レイヤは、Cloud コンソールで構成する必要があります。
指定されたタイプのレイヤがこの地図に存在しない場合、データドリブン スタイル設定が有効になっていない場合、または Metal レンダリング フレームワークが使用されていない場合、生成されるレイヤの isAvailable は NO
になり、どの呼び出しにも応答しません。
Metal レンダラが必要です。Metal を有効にする方法については、https://developers.google.com/maps/documentation/ios-sdk/config#use-metal をご覧ください。
-(void)animateToCameraPosition: | (GMSCameraPosition *) | cameraPosition |
この地図のカメラを cameraPosition
にアニメーション化します。
- (void) animateToLocation: | (CLLocationCoordinate2D) | 位置情報 |
animateToCameraPosition: と同様ですが、カメラの位置のみを変更します(つまり、現在の場所から location
に変更します)。
- (void) animateToZoom: | (float) | ズーム |
animateToCameraPosition: と同様ですが、カメラのズームレベルのみを変更します。
この値は [kGMSMinZoomLevel, kGMSMaxZoomLevel] によってクランプされます。
-(void)animateToBearing: | (CLLocationDirection) | bearing |
animateToCameraPosition: と同様ですが、カメラの方向指定のみ(度数)を変更します。
0 は真北を示します。
-(void)animateToViewingAngle: | (double) | viewingAngle |
animateToCameraPosition: と同様ですが、カメラの傾斜角(度数)のみを変更します。
この値は、地球との相対的な近さに応じて、最小値がゼロ(真下向き)で、水平線に対して 30 ~ 45 度に固定されます。
-(void)animateWithCameraUpdate: | (GMSCameraUpdate *) | cameraUpdate |
cameraUpdate
を現在のカメラに適用し、animateToCameraPosition: に従って結果を使用します。
友だちと関連機能のドキュメント
- (NSString* const) kGMSAccessibilityCompass [related] |
コンパスボタンのユーザー補助 ID。
- (NSString* const) kGMSAccessibilityMyLocation [related] |
「現在地」ボタンのユーザー補助 ID。
- (NSString* const) kGMSAccessibilityOutOfQuota [related] |
「容量不足」エラーラベルのユーザー補助 ID。
プロパティのドキュメント
- (IBOutlet id<GMSMapViewDelegate>) delegate [read, write, assign] |
GMSMapView デリゲートします。
- (GMSCameraPosition*) カメラ [read, write, copy] |
カメラを制御し、地図の向きを指定します。
このプロパティの変更は即座に行われます。
- (GMSProjection*) 投影 [read, assign] |
画面の座標と緯度と経度の座標間の変換に使用できる GMSProjection オブジェクトを返します。
これは現在の投影のスナップショットであり、カメラが移動しても自動更新されません。これは、最後に描画された GMSMapView フレームの投影、またはカメラが明示的に設定されているか、作成したばかりの地図の場合は次のフレームのいずれかを表します。nil になることはありません。
- (BOOL)myLocationEnabled [read, write, assign] |
現在地を示す点と精度の円を有効にするかどうかを制御します。
デフォルトは NO です。
- (CLLocation*)myLocation [read, assign] |
現在地機能が有効になっている場合は、デバイスの位置情報のドットが描画されている場所が表示されます。
無効になっている場合、または有効でも位置情報が利用できない場合、これは nil になります。このプロパティは KVO を使用して監視できます。
- (GMSMarker*)selectedMarker [read, write, assign] |
選択されているマーカー。
このプロパティを設定すると、特定のマーカーが選択され、その上に情報ウィンドウが表示されます。このプロパティが nil でない場合、nil に設定するとマーカーの選択が解除され、情報ウィンドウが非表示になります。このプロパティは KVO を使用して監視できます。
- (BOOL)trafficEnabled [read, write, assign] |
地図に交通データを描画するかどうかを指定します(利用可能な場合)。
利用できるトラフィック データは変わる可能性があります。デフォルトは NO です。
- (GMSMapViewType)mapType [read, write, assign] |
表示する地図タイルのタイプを制御します。
デフォルトは kGMSTypeNormal です。
- (GMSMapStyle*)mapStyle [read, write, assign] |
地図のスタイルを制御します。
nil 以外の mapStyle は、mapType が Normal の場合にのみ適用されます。
-(浮動小数点)minZoom [read, assign] |
最小ズーム(カメラをズームアウトできる最大距離)。
デフォルトは kGMSMinZoomLevel です。-setMinZoom:maxZoom: で変更。
-(浮動小数点)maxZoom [read, assign] |
最大ズーム(カメラが地球に最も近いズームレベル)。
デフォルトは kGMSMaxZoomLevel です。-setMinZoom:maxZoom: で変更。
- (BOOL)buildingsEnabled [read, write, assign] |
設定すると、利用可能な場合に建物が 3D 表示されます。
デフォルトは YES です。
これは、カスタム タイル レイヤを地図に追加する場合に、ズームレベルが高いときに見やすくするために便利です。この値を変更すると、すべてのタイルが一時的に無効になります。
- (BOOL)indoorEnabled [read, write, assign] |
利用可能な場合にインドアマップを表示するかどうかを設定します。
デフォルトは YES です。
「いいえ」に設定した場合は、屋内データのキャッシュが削除され、エンドユーザーが現在選択している階がリセットされる可能性があります。
- (GMSIndoorDisplay*)indoorDisplay [read, assign] |
屋内データ表示のさまざまな要素を監視または制御できる GMSIndoorDisplay インスタンスを取得します。
- (GMSUISettings*)設定 [read, assign] |
地図のユーザー インターフェース設定を制御する GMSUISettings オブジェクトを取得します。
-(UIEdgeInsets)パディング [read, write, assign] |
ビューの「表示」領域を制御します。
パディングを適用すると、ビューの端付近に、地図データは含まれますが、UI コントロールは含まれない領域を作成できます。
パディングのバランスが取れていない場合は、ビューの中心が必要に応じて移動します。パディングは projection
プロパティにも影響するため、表示される領域にパディング領域は含まれません。GMSCameraUpdate の fitToBounds では、このパディングとリクエストされたパディングの両方を考慮するようにします。
このプロパティは、UIView ベースのアニメーション ブロック内でアニメーション化できます。
- (GMSMapViewPaddingAdjustmentBehavior)paddingAdjustmentBehavior [read, write, assign] |
セーフエリアのインセットをパディング値に追加する方法を制御します。
セーフエリア インセットは、パディングと同様に、デバイスのセーフエリア内に地図のコントロール(コンパス、現在地ボタン、階数選択ツールなど)を配置します。
デフォルトは kGMSMapViewPaddingAlignBehaviorAlways です。
- (BOOL)accessibilityElementsHidden [read, write, assign] |
デフォルトは YES です。
NO に設定すると、GMSMapView はオーバーレイ オブジェクト(GMSMarker や GMSPolyline など)のユーザー補助要素を生成します。
このプロパティは、デフォルト値の YES を除き、非公式の UIAccessibility プロトコルに従います。
- (GMSMapLayer*)レイヤ [read, retain] |
レイヤに使用されるカスタム CALayer タイプのアクセサー。
- (GMSFrameRate) preferredFrameRate [read, write, assign] |
レンダリングのフレームレートをコントロールします。
デフォルト値は kGMSFrameRateMaximum です。
- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign] |
nil でない場合、カメラ ターゲットが制約され、操作によって指定された境界外に出ることがなくなります。
- (GMSMapCapabilityFlags)mapCapabilities [read, assign] |
現時点で条件付きで利用できる(mapID などの地図設定に依存する)すべての機能。
常時利用可能な機能は含まれません。