Справочник классов GMSMapView


Обзор

Это основной класс SDK Google Maps для iOS, который является точкой входа для всех методов, связанных с картой.

Экземпляр карты должен быть создан с помощью одного из конструкторов -init или -initWithOptions:.

GMSMapView можно читать и изменять только из основного потока, как и все объекты UIKit. Вызов этих методов из другого потока приведет к исключению или неопределенному поведению.

Открытые функции-члены

(тип экземпляра) - в этом
Инициализируется с помощью CGRectZero и параметров по умолчанию.
(тип экземпляра) - initWithOptions:
Создает новый вид карты с заданными параметрами.
(тип экземпляра) - initWithFrame:
(тип экземпляра, допускающий значение NULL) - initWithCoder:
(тип экземпляра) - initWithFrame:камера:
Создает и возвращает представление карты с рамкой и целью камеры.
(тип экземпляра) - initWithFrame:mapID:камера:
Создает и возвращает представление карты с рамкой, идентификатором карты и целью камеры.
(пустота) - начать рендеринг
Приказывает этой карте включить рендерер.
(пустота) - остановить рендеринг
Приказывает этой карте выключить рендерер.
(пустота) - прозрачный
Удаляет всю разметку, добавленную на карту, включая маркеры, полилинии и наложения земли.
(пустота) - setMinZoom:maxZoom:
Устанавливает minZoom и maxZoom .
(обнуляемое значение GMSCameraPosition *) - cameraForBounds:вставки:
Создайте GMSCameraPosition , который представляет bounds с padding .
(пустота) - перемещение камеры:
Меняет камеру в соответствии с update .
(БУЛ) - areEqualForRenderingPosition:позиция:
Проверьте, будут ли заданные положения камеры практически одинаковыми для рендеринга камеры, принимая во внимание уровень точности и внутренние преобразования.
( GMSFeatureLayer
< GMSPlaceFeature * > *)
- FeatureLayerOfFeatureType:
Возвращает векторный слой указанного типа.
(пустота) - недействительныйLayoutForAccessoryView:
Делает недействительным дополнительное представление и запускает изменение макета для этого представления.
(пустота) - установитьHeaderAccessoryView:
Устанавливает положение дополнительного представления под основным заголовком пользовательского интерфейса навигации.
(пустота) - анимироватьToCameraPosition:
Анимирует камеру этой карты в cameraPosition .
(пустота) - анимироватьТолокация:
Как animateToCameraPosition:, но меняет только местоположение камеры (т.е. с текущего местоположения на location ).
(пустота) - анимироватьToZoom:
Как animateToCameraPosition:, но меняет только уровень масштабирования камеры.
(пустота) - анимироватьToBearing:
Как animateToCameraPosition:, но меняет только направление камеры (в градусах).
(пустота) - анимироватьToViewingAngle:
Как animateToCameraPosition:, но меняет только угол обзора камеры (в градусах).
(пустота) - анимация с камеройобновление:
Применяет cameraUpdate к текущей камере, а затем использует результат согласно animateToCameraPosition:.
(БУЛ) - включитьNavigationWithSession:
Начинает навигацию в этом виде карты, используя данный сеанс навигации.

Статические открытые функции-члены

(тип экземпляра) + mapWithFrame:камера:
Создает и возвращает представление карты с рамкой и целью камеры.
(тип экземпляра) + mapWithFrame:mapID:камера:
Удобный инициализатор для создания и возврата представления карты с рамкой, идентификатором карты и целью камеры.

Характеристики

Идентификатор IBOutlet <GMSMapViewDelegate> делегат
Делегат GMSMapView .
ГМСКамераПозиция * камера
Управляет камерой, которая определяет ориентацию карты.
GMSПроекция * проекция
Возвращает объект GMSProjection , который можно использовать для преобразования координат экрана в координаты широты и долготы.
БООЛ моелокациюэнаблед
Определяет, включены ли точка «Мое местоположение» и круг точности.
CМестоположение * мое местонахождение
Если функция «Мое местоположение» включена, отображается место, где отображается точка местоположения устройства.
GMSМаркер * выбранныйМаркер
Маркер, который выбран.
БООЛ трафик включен
Определяет, отображает ли карта данные о трафике, если они доступны.
GMSMapViewType тип карты
Управляет типом фрагментов карты, которые должны отображаться.
ГМСМапСтиль * стиль карты
Управляет стилем карты.
плавать минZoom
Минимальный зум (максимально возможное уменьшение масштаба камеры).
плавать МаксЗум
Максимальный зум (наиболее близкое расположение камеры к Земле).
БООЛ зданияВключено
Если установлено, 3D-здания будут отображаться там, где они доступны.
БООЛ в помещенииВключено
Определяет, будут ли отображаться карты помещений, если они доступны.
GMSIndoorДисплей * в помещенииДисплей
Получает экземпляр GMSIndoorDisplay , который позволяет наблюдать или контролировать аспекты отображения данных внутри помещения.
Настройки GMSUI * настройки
Получает объект GMSUISettings , который управляет настройками пользовательского интерфейса карты.
UIEdgeInsets прокладка
Управляет «видимой» областью представления.
GMSMapViewPaddingAdjustmentBehavior дополнениеAdjustmentBehavior
Управляет добавлением вставок безопасной области к значениям заполнения.
БООЛ доступностьЭлементыСкрытый
По умолчанию ДА.
ГМСМапЛайер * слой
Аксессор для пользовательского типа CALayer, используемого для слоя.
ГМСФрейте Предпочтительная частота кадров
Управляет частотой кадров рендеринга.
GMSCoordinateBounds * камераTargetBounds
Если не ноль, ограничивает цель камеры, чтобы жесты не могли заставить ее выйти за указанные границы.
GMSMapCapabilityFlags картаВозможности
Все условно-доступные (в зависимости от MapID или других настроек карты) возможности, доступные в текущий момент времени.
Идентификатор IBOutlet
<GMSMapViewNavigationUIDelegate>
навигацияUIDelegate
Делегат GMSMapView , который получает обратные вызовы для событий пользовательского интерфейса навигации.
БООЛ навигация включена
Включена ли функция навигации для этой карты.
ГМСНавигатор * штурман
Навигатор для этого GMSMapView , который позволяет запрашивать маршруты и запускать пошаговое руководство.
GMSRoadSnappedLocationProvider * roadSnappedLocationProvider
Позволяет подписаться на обновления местоположения.
GMSLocationSimulator * locationСимулятор
Позволяет имитировать местоположение устройства.
GMSNavigationCameraMode режим камеры
Режим камеры, определяющий ее поведение, когда для свойства NavigationEnabled установлено значение YES.
ГМСНавигацияКамераПерспектива следующийПерспектива
Перспектива камеры, которая будет использоваться при отслеживании местоположения устройства.
GMSNavigationTravelMode режим путешествия
Режим движения, который определяет, какой тип маршрута будет выбран, и способ определения курса устройства.
GMSNНавигацияОсвещениеРежим режим освещения
Режим освещения определяет, какую цветовую схему следует использовать для рендеринга карты.
БООЛ долженDisplaySpeedLimit
Определяет, должно ли отображаться ограничение скорости, когда активны указания и доступны данные об ограничении скорости.
БООЛ долженДисплейСпидометр
Указывает, отображается ли значок спидометра.
UILayoutGuide * навигацияHeaderLayoutGuide
Прямоугольник, покрытый заголовком навигации.
UILayoutGuide * навигацияFooterLayoutGuide
Прямоугольник, покрытый нижним колонтитулом навигации.
GMSNavigationМаршрутВыноскаФормат RouteCalloutFormat
Указывает, какой формат выноски маршрута (по умолчанию, время или расстояние) использовать.
плавать следующийZoomLevel
Настраиваемый уровень масштабирования во время навигации.
GMSRoadSnappedLocationProvider * дорогаSnappedMyLocationSource
Устанавливает поставщика «Мое местоположение» для этого вида карты.

(Обратите внимание, что это не функции-члены.)

NSString *const kGMSAccessibilityКомпас
Идентификатор доступности для кнопки компаса.
NSString *const kGMSAccessibilityMyLocation
Идентификатор доступности для кнопки «Мое местоположение».
NSString *const kGMSAccessibilityOutOfQuota
Идентификатор доступности для метки ошибки «вне квоты».

Документация по функциям-членам

- (тип экземпляра) инициализация

Инициализируется с помощью CGRectZero и параметров по умолчанию.

- (тип экземпляра) initWithOptions: (ненулевой параметр GMSMapViewOptions *) параметры

Создает новый вид карты с заданными параметрами.

Значение объекта параметров копируется этим методом.

- (тип экземпляра) initWithFrame: (CGRect) рамка
- (тип экземпляра, допускающий значение NULL) initWithCoder: (НСкодер *) кодер
+ (тип экземпляра)mapWithFrame: (CGRect) рамка
камера: ( GMSCameraPosition *) камера

Создает и возвращает представление карты с рамкой и целью камеры.

+ (тип экземпляра)mapWithFrame: (CGRect) рамка
идентификатор карты: ( GMSMapID *) идентификатор карты
камера: ( GMSCameraPosition *) камера

Удобный инициализатор для создания и возврата представления карты с рамкой, идентификатором карты и целью камеры.

- (тип экземпляра) initWithFrame: (CGRect) рамка
камера: ( GMSCameraPosition *) камера

Создает и возвращает представление карты с рамкой и целью камеры.

Примечание:
Это устарело. Вместо этого используйте -init или -initWithOptions:.
- (тип экземпляра) initWithFrame: (CGRect) рамка
идентификатор карты: ( GMSMapID *) идентификатор карты
камера: ( GMSCameraPosition *) камера

Создает и возвращает представление карты с рамкой, идентификатором карты и целью камеры.

Примечание:
Это устарело. Вместо этого используйте -init или -initWithOptions:.

Приказывает этой карте включить рендерер.

Это необязательно и идемпотентно.

Примечание:
Это устарело. Этот метод устарел и будет удален в будущем выпуске.

Приказывает этой карте выключить рендерер.

Это необязательно и идемпотентно.

Примечание:
Это устарело. Этот метод устарел и будет удален в будущем выпуске.
- (недействительно) ясно

Удаляет всю разметку, добавленную на карту, включая маркеры, полилинии и наложения земли.

Это не приведет к очистке видимой точки местоположения и сбросу текущего типа карты.

- (недействительно) setMinZoom: (плавать) минZoom
МаксЗум: (плавать) МаксЗум

Устанавливает minZoom и maxZoom .

Этот метод ожидает, что минимум будет меньше или равен максимуму, и в противном случае выдаст исключение с именем NSRANgeException.

- (обнуляемое GMSCameraPosition *) cameraForBounds: ( GMSCoordinateBounds *) границы
вставки: (UIEdgeInsets) вставки

Создайте GMSCameraPosition , который представляет bounds с padding .

Камера будет иметь нулевое направление и наклон (т. е. будет обращена на север и смотреть прямо на Землю). При этом учитывается рамка и заполнение этого GMSMapView .

Если границы недействительны, этот метод вернет нулевую камеру.

- (недействительно) moveCamera: ( GMSCameraUpdate *) обновлять

Меняет камеру в соответствии с update .

Смена камеры происходит мгновенно (без анимации).

- (BOOL) areEqualForRenderingPosition: ( GMSCameraPosition *) позиция
позиция: ( GMSCameraPosition *) другая позиция

Проверьте, будут ли данные положения камеры практически одинаковыми для рендеринга камеры, принимая во внимание уровень точности и внутренние преобразования.

- ( GMSFeatureLayer < GMSPlaceFeature *> *) FeatureLayerOfFeatureType: (GMSFeatureType) тип функции

Возвращает векторный слой указанного типа.

Слои объектов необходимо настроить в Cloud Console.

Если слой указанного типа не существует на этой карте, или если стиль, управляемый данными, не включен, или если не используется платформа рендеринга Metal, isAvailable результирующего слоя будет NO и не будет отвечать ни на какие вызовы.

Требуется рендерер металла. Узнайте, как включить Metal, на странице https://developers.google.com/maps/documentation/ios-sdk/config#use-metal .

- (недействительно) инвалидироватьLayoutForAccessoryView: (UIView <GMSNavigationAccessoryView> *) аксессуарView

Делает недействительным дополнительное представление и запускает изменение макета для этого представления.

Представление должно быть одним из текущих дополнительных представлений. Если руководство неактивно, этот вызов является инструкцией NO-OP.

- (недействительно) setHeaderAccessoryView: (обнуляемый UIView <GMSNavigationAccessoryView> *) заголовокAccessoryView

Устанавливает положение дополнительного представления под основным заголовком пользовательского интерфейса навигации.

Передача нулевого значения удаляет представление аксессуаров. Если руководство неактивно, этот вызов является инструкцией NO-OP.

@note Если представление карты короткое, SDK скрывает дополнительное представление из-за ограниченного пространства. Представления управляются изнутри для оптимизации отображения карты.

- (void) animateToCameraPosition: ( GMSCameraPosition *) камераПозиция

Анимирует камеру этой карты в cameraPosition .

- (void) animateToLocation: (CLLocationCoordinate2D) расположение

Как animateToCameraPosition:, но меняет только местоположение камеры (т.е. с текущего местоположения на location ).

- (недействительно) animateToZoom: (плавать) масштабировать

Как animateToCameraPosition:, но меняет только уровень масштабирования камеры.

Это значение ограничивается [kGMSMinZoomLevel, kGMSMaxZoomLevel].

- (void) animateToBearing: (CLLocationDirection) несущий

Как animateToCameraPosition:, но меняет только направление камеры (в градусах).

Ноль указывает истинный север.

- (void) animateToViewingAngle: (двойной) угол обзора

Как animateToCameraPosition:, но меняет только угол обзора камеры (в градусах).

Это значение будет ограничено минимумом до нуля (т. е. если смотреть прямо вниз) и между 30 и 45 градусами к горизонту, в зависимости от относительной близости к земле.

- (void) animateWithCameraUpdate: ( GMSCameraUpdate *) камераОбновление

Применяет cameraUpdate к текущей камере, а затем использует результат согласно animateToCameraPosition:.

- (BOOL) EnableNavigationWithSession: ( GMSNavigationSession *) навигацияСессия

Начинает навигацию в этом виде карты, используя данный сеанс навигации.

Возврат:
Была ли навигация успешно запущена (например, НЕТ будет возвращено, если условия еще не были приняты).

- (NSString* const) kGMSAccessibilityCompass [related]

Идентификатор доступности для кнопки компаса.

- (NSString* const) kGMSAccessibilityMyLocation [related]

Идентификатор доступности для кнопки «Мое местоположение».

- (NSString* const) kGMSAccessibilityOutOfQuota [related]

Идентификатор доступности для метки ошибки «вне квоты».


Документация на недвижимость

- (IBOutlet id <GMSMapViewDelegate> ) делегат [read, write, assign]

Делегат GMSMapView .

- ( GMSCameraPosition *) камера [read, write, copy]

Управляет камерой, которая определяет ориентацию карты.

Изменение этого свойства происходит мгновенно.

- ( GMSProjection *) проекция [read, assign]

Возвращает объект GMSProjection , который можно использовать для преобразования координат экрана в координаты широты и долготы.

Это снимок текущей проекции, который не будет автоматически обновляться при движении камеры. Он представляет собой либо проекцию последнего нарисованного кадра GMSMapView , либо; где явно установлена ​​камера или только что создана карта, предстоящий кадр. Оно никогда не будет равно нулю.

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

Определяет, включены ли точка «Мое местоположение» и круг точности.

По умолчанию НЕТ.

- (CLLocation*) myLocation [read, assign]

Если функция «Мое местоположение» включена, отображается место, где отображается точка местоположения устройства.

Если он отключен или включен, но данные о местоположении недоступны, это значение будет равно нулю. Это свойство можно наблюдать с помощью KVO.

- ( GMSMarker *) selectedMarker [read, write, assign]

Маркер, который выбран.

Установка этого свойства выбирает конкретный маркер, отображая на нем информационное окно. Если это свойство не равно нулю, установка его на ноль отменяет выбор маркера и скрывает информационное окно. Это свойство можно наблюдать с помощью KVO.

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

Определяет, отображает ли карта данные о трафике, если они доступны.

Это зависит от наличия данных о трафике. По умолчанию НЕТ.

- ( GMSMapViewType ) тип карты [read, write, assign]

Управляет типом фрагментов карты, которые должны отображаться.

По умолчанию — kGMSTypeNormal.

- ( GMSMapStyle *) mapStyle [read, write, assign]

Управляет стилем карты.

Ненулевой стиль карты будет применяться только в том случае, если тип карты имеет значение Normal.

- (float) minZoom [read, assign]

Минимальный зум (максимально возможное уменьшение масштаба камеры).

По умолчанию — kGMSMinZoomLevel. Изменено с помощью -setMinZoom:maxZoom:.

- (float) maxZoom [read, assign]

Максимальный зум (наиболее близкое расположение камеры к Земле).

По умолчанию — kGMSMaxZoomLevel. Изменено с помощью -setMinZoom:maxZoom:.

- (BOOL) здания включены [read, write, assign]

Если установлено, 3D-здания будут отображаться там, где они доступны.

По умолчанию ДА.

Это может быть полезно при добавлении на карту пользовательского слоя листов, чтобы сделать его более четким при больших уровнях масштабирования. Изменение этого значения приведет к тому, что все плитки на короткое время станут недействительными.

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

Определяет, будут ли отображаться карты помещений, если они доступны.

По умолчанию ДА.

Если для этого параметра установлено значение «НЕТ», кэши внутренних данных могут быть очищены, а любой этаж, выбранный в данный момент конечным пользователем, может быть сброшен.

- ( GMSIndoorDisplay *) doorDisplay [read, assign]

Получает экземпляр GMSIndoorDisplay , который позволяет наблюдать или контролировать аспекты отображения данных внутри помещения.

- ( GMSUISettings *) настройки [read, assign]

Получает объект GMSUISettings , который управляет настройками пользовательского интерфейса карты.

- (UIEdgeInsets) заполнение [read, write, assign]

Управляет «видимой» областью представления.

Применяя отступы, можно создать область по краю представления, которая будет содержать данные карты, но не будет содержать элементы управления пользовательского интерфейса.

Если отступы не сбалансированы, визуальный центр представления будет перемещаться соответствующим образом. Заполнение также повлияет на свойство projection , поэтому видимая область не будет включать область заполнения. GMSCameraUpdate fitToBounds гарантирует, что как это дополнение, так и любое запрошенное дополнение будут приняты во внимание.

Это свойство может быть анимировано внутри блока анимации на основе UIView.

Управляет добавлением вставок безопасной области к значениям заполнения.

Как и отступы, безопасная область вставляет в безопасную зону устройства элементы управления картой положения, такие как компас, кнопку моего местоположения и средство выбора этажа.

По умолчанию — kGMSMapViewPaddingAdjustmentBehaviorAlways.

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

По умолчанию ДА.

Если установлено значение NO, GMSMapView будет генерировать элементы доступности для наложенных объектов, таких как GMSMarker и GMSPolyline .

Это свойство соответствует неофициальному протоколу UIAccessibility, за исключением значения по умолчанию YES.

- ( GMSMapLayer *) слой [read, retain]

Аксессор для пользовательского типа CALayer, используемого для слоя.

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

Управляет частотой кадров рендеринга.

Значение по умолчанию — kGMSFrameRateMaximum.

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

Если не ноль, ограничивает цель камеры, чтобы жесты не могли заставить ее выйти за указанные границы.

Все условно-доступные (в зависимости от MapID или других настроек карты) возможности, доступные в текущий момент времени.

Не включает всегда доступные возможности.

- (IBOutlet id < GMSMapViewNavigationUIDelegate >) NavigationUIDelegate [read, write, assign]

Делегат GMSMapView , который получает обратные вызовы для событий пользовательского интерфейса навигации.

- (BOOL) навигация включена [read, write, assign]

Включена ли функция навигации для этой карты.

Если это «ДА», на карте могут отображаться маршруты и пошаговые инструкции, камера может перейти в режим следования, а кнопка повторного центрирования появляется, когда камера не отслеживает местоположение устройства.

Если пользователь не принял положения и условия Google Navigation, установка этого свойства не будет иметь никакого эффекта. Чтобы отобразить диалоговое окно условий использования, см. методы GMSNavigationServices .

- ( GMSNavigator *) навигатор [read, assign]

Навигатор для этого GMSMapView , который позволяет запрашивать маршруты и запускать пошаговое руководство.

Если пользователь не принял условия использования Google Navigation, это значение будет равно нулю. Чтобы отобразить диалоговое окно условий использования, см. методы GMSNavigationServices .

Позволяет подписаться на обновления местоположения.

Если пользователь не принял условия использования Google Navigation, это значение будет равно нулю. Чтобы отобразить диалоговое окно условий использования, см. методы GMSNavigationServices .

Позволяет имитировать местоположение устройства.

Имитируемое местоположение влияет на положение шеврона на карте, ход пошаговых указаний и обновления, предоставляемые поставщиком местоположения с привязкой к дороге.

Если пользователь не принял условия использования Google Navigation, это значение будет равно нулю. Чтобы отобразить диалоговое окно условий использования, см. методы GMSNavigationServices .

- ( GMSNavigationCameraMode ) cameraMode [read, write, assign]

Режим камеры, определяющий ее поведение, когда для свойства NavigationEnabled установлено значение YES.

См. GMSNavigationCameraMode для доступных режимов.

Перспектива камеры, которая будет использоваться при отслеживании местоположения устройства.

Чтобы эта перспектива вступила в силу, для свойства navigationEnabled должно быть установлено значение YES, а cameraMode должно быть установлено значение GMSNavigationCameraModeFollowing.

- ( GMSNavigationTravelMode ) travelMode [read, write, assign]

Режим движения, который определяет, какой тип маршрута будет выбран, и способ определения курса устройства.

В режиме вождения курс устройства зависит от направления движения, тогда как в режиме езды на велосипеде или в режиме ходьбы курс основан на направлении компаса, по которому смотрит устройство. Курс устройства представлен направлением маркера местоположения устройства и сообщается GMSRoadSnappedLocationProvider .

- ( GMSNavigationLightingMode ) LightingMode [read, write, assign]

Режим освещения определяет, какую цветовую схему следует использовать для рендеринга карты.

Он также используется для определения цветов по умолчанию различных элементов интерфейса.

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

Определяет, должно ли отображаться ограничение скорости, когда активны указания и доступны данные об ограничении скорости.

Значение по умолчанию — НЕТ.

Указывает, отображается ли значок спидометра.

Если эта функция включена, во время навигации в нижнем углу отображается значок спидометра, указывающий скорость автомобиля. Если доступны достоверные данные об ограничении скорости, значок ограничения скорости также отображается и прикрепляется к значку спидометра. Значок спидометра может иметь разные цвета текста и фона в зависимости от серьезности предупреждения о превышении скорости.

Если кнопка повторного центрирования включена, то при отображении кнопки повторного центрирования ограничение скорости и значок спидометра временно скрываются.

- (UILayoutGuide*) NavigationHeaderLayoutGuide [read, assign]

Прямоугольник, покрытый заголовком навигации.

Высота равна нулю, когда заголовок скрыт.

- (UILayoutGuide*) NavigationFooterLayoutGuide [read, assign]

Прямоугольник, покрытый нижним колонтитулом навигации.

Высота равна нулю, когда нижний колонтитул скрыт.

Указывает, какой формат выноски маршрута (по умолчанию, время или расстояние) использовать.

- (float) nextZoomLevel [read, write, assign]

Настраиваемый уровень масштабирования во время навигации.

Установка этого значения переопределит уровень масштабирования Navigation SDK по умолчанию, когда камера отслеживает местоположение устройства (т. е. cameraMode равен GMSNavigationCameraModeFollowing ). Для этого параметра можно установить значение GMSNavigationNoFollowingZoomLevel , если не нужно использовать переопределение уровня масштабирования.

Устанавливает поставщика «Мое местоположение» для этого вида карты.

Обычно точка «Мое местоположение» и круг точности для вида карты определяются фактическим местоположением устройства. При установке этого свойства точка «Мое местоположение» и круг точности будут определяться местоположением, привязанным к дороге, от данного поставщика местоположений. Чтобы вернуться к нормальному поведению, установите для этого свойства значение ноль.

Это не имеет никакого эффекта, если для этого вида карты включен navigationEnabled .