GMSMapView クラス リファレンス


概要

これは 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:
 minZoommaxZoom を設定します。
(nullable GMSCameraPosition *) - cameraForBounds:insets:
 paddingbounds を提示する 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 デリゲート:
GMSCameraPositioncamera
 カメラを制御し、地図の向きを定義します。
GMSProjectionprojection
 画面座標と緯度/経度の座標を変換するために使用できる GMSProjection オブジェクトを返します。
BOOL myLocationEnabled
 現在地を示すドットと精度円を有効にするかどうかを制御します。
CLLocation * myLocation
 現在地が有効になっている場合は、デバイスの位置情報のドットが描画されている場所が表示されます。
GMSMarkerselectedMarker
 選択されているマーカー。
BOOL trafficEnabled
 利用可能な場合に、地図に交通データを描画するかどうかを制御します。
GMSMapViewTypemapType
 表示する地図タイルの種類を制御します。
GMSMapStylemapStyle
 地図のスタイルを制御します。
float minZoom
 最小ズーム(カメラを最もズームアウトできる距離)。
float maxZoom
 最大ズーム(カメラが地球に最も近いもの)。
BOOL buildingsEnabled
 設定すると、可能な場合は建物が 3D 表示されます。
BOOL indoorEnabled
 利用可能な場合にインドアマップを表示するかどうかを設定します。
GMSIndoorDisplayindoorDisplay
 屋内データ表示のさまざまな側面を監視または制御できる GMSIndoorDisplay インスタンスを取得します。
GMSUISettings設定
 地図のユーザー インターフェース設定を制御する GMSUISettings オブジェクトを取得します。
UIEdgeInsetsパディング
 ビューの「表示」領域を制御します。
GMSMapViewPaddingAdjustmentBehaviorpaddingAdjustmentBehavior
 セーフエリア インセットをパディング値に追加する方法を制御します。
BOOL accessibilityElementsHidden
 デフォルトは YES です。
GMSMapLayerレイヤ
 レイヤに使用されるカスタム CALayer タイプのアクセサー。
GMSFrameRatepreferredFrameRate
 レンダリングのフレームレートを制御します。
GMSCoordinateBoundscameraTargetBounds
 nil でない場合、ジェスチャーによって指定された境界から離れないようにカメラ ターゲットを制限します。
GMSMapCapabilityFlagsmapCapabilities
 現時点で利用可能な、条件付きで利用できる(mapID などの地図設定に依存する)すべての機能。

(これらはメンバー関数ではないことに注意してください)。

NSString *constkGMSAccessibilityCompass
 コンパスボタンのユーザー補助 ID。
NSString *constkGMSAccessibilityMyLocation
 「現在地」ボタンのユーザー補助 ID。
NSString *constkGMSAccessibilityOutOfQuota
 「容量不足」エラーラベルのユーザー補助 ID。

メンバー関数のドキュメント

-(instancetype)init

CGRectZero とデフォルトのオプションで初期化します。

-(インスタンスタイプ)initWithOptions: (nonnull GMSMapViewOptions *) options

指定されたオプションで新しい地図表示を作成します。

オプション オブジェクトの値はこのメソッドによってコピーされます。

-(instancetype)initWithFrame: (CGRect) フレーム
-(インスタンス タイプ)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) クリア

マーカー、ポリライン、地面オーバーレイなど、地図に追加されているすべてのマークアップを消去します。

これにより、表示されている場所のドットがクリアされたり、現在の mapType がリセットされたりすることはありません。

- (void) setMinZoom: (float)  minZoom
maxZoom: (float)  maxZoom

minZoommaxZoom を設定します。

このメソッドは、最小値が最大値以下であると想定し、そうでない場合は NSRangeException という名前で例外をスローします。

- (nullable GMSCameraPosition *) cameraForBounds: GMSCoordinateBounds *) 境界
インセット: (UIEdgeInsets) インセット

paddingbounds を提示する GMSCameraPosition をビルドします。

カメラは向きと傾斜がゼロになります(つまり、北を向いて地球を真っすぐに見ます)。ここでは、この GMSMapView のフレームとパディングが考慮されます。

境界が無効な場合、このメソッドは nil カメラを返します。

- (void) moveCamera: GMSCameraUpdate *) update

update に応じてカメラを変更します。

カメラの変更は瞬時に行われます(アニメーションはありません)。

- (BOOL) areEqualForRenderingPosition: GMSCameraPosition *) position
position: GMSCameraPosition *) otherPosition

内部で使用される精度と変換のレベルを考慮し、指定されたカメラ位置によって事実上同じカメラがレンダリングされるかどうかを確認します。

指定されたタイプの対象物レイヤを返します。

対象物レイヤは、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: と同様に、カメラの方向のみ(度数)を変更します。

ゼロは真北を示します。

-(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*) camera [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 です。

- (GMSMapViewTypemapType [read, write, assign]

表示する地図タイルの種類を制御します。

デフォルトは kGMSTypeStandard です。

- (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 ベースのアニメーション ブロック内でアニメーション化できます。

セーフエリア インセットをパディング値に追加する方法を制御します。

パディングと同様に、セーフエリア インセットは、コンパス、[現在地] ボタン、階数選択ツールなどの地図のコントロールをデバイスのセーフエリア内に配置します。

デフォルトの値は kGMSMapViewPaddingAlignBehaviorAlways です。

- (BOOL)accessibilityElementsHidden [read, write, assign]

デフォルトは YES です。

NO に設定した場合、GMSMapView はオーバーレイ オブジェクトのユーザー補助要素(GMSMarkerGMSPolyline など)を生成します。

このプロパティは、デフォルト値の YES を除き、非公式の UIAccessibility プロトコルに準拠しています。

- (GMSMapLayer*) レイヤ [read, retain]

レイヤに使用されるカスタム CALayer タイプのアクセサー。

- (GMSFrameRate) preferredFrameRate [read, write, assign]

レンダリングのフレームレートを制御します。

デフォルト値は kGMSFrameRateRate です。

- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign]

nil でない場合、ジェスチャーによって指定された境界から離れないようにカメラ ターゲットを制限します。

- (GMSMapCapabilityFlagsmapCapabilities [read, assign]

現時点で利用可能な、条件付きで利用できる(mapID などの地図設定に依存する)すべての機能。

常時利用可能な機能は含まれません。