CameraUpdateFactory

публичный финальный класс CameraUpdateFactory расширяет объект

Класс, содержащий методы для создания объектов CameraUpdate , которые меняют камеру карты. Чтобы изменить камеру карты, вызовите animateCamera(CameraUpdate) , animateCamera(CameraUpdate, GoogleMap.CancelableCallback) или moveCamera(CameraUpdate) , используя объект CameraUpdate , созданный с помощью этого класса.

Например, чтобы увеличить масштаб карты, вы можете использовать следующий код:

GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 

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

  • Подождите, пока GoogleMap станет доступен из MapFragment или MapView , которые вы добавили в свое приложение. Вы можете получить экземпляр GoogleMap , вызвав getMapAsync() и дождавшись обратного вызова onMapReady(GoogleMap map) .
  • Вызовите initialize(Context) . Пока исключение GooglePlayServicesNotAvailableException не создано, этот класс будет правильно инициализирован.

Руководство разработчика

Для получения дополнительной информации прочтите руководство разработчика Camera and View .

Краткое описание общедоступного метода

статическое обновление камеры
newCameraPosition ( CameraPosition cameraPosition)
Возвращает CameraUpdate , который перемещает камеру в указанное CameraPosition .
статическое обновление камеры
newLatLng ( LatLng latLng)
Возвращает CameraUpdate , который перемещает центр экрана на широту и долготу, заданные объектом LatLng .
статическое обновление камеры
newLatLngBounds (границы LatLngBounds , ширина int, высота int, заполнение int)
Возвращает CameraUpdate , который преобразует камеру таким образом, что указанные границы широты и долготы центрируются на экране внутри ограничивающей рамки указанных размеров при максимально возможном уровне масштабирования.
статическое обновление камеры
newLatLngBounds (границы LatLngBounds , заполнение int)
Возвращает CameraUpdate , который преобразует камеру таким образом, что указанные границы широты и долготы центрируются на экране при максимально возможном уровне масштабирования.
статическое обновление камеры
newLatLngZoom ( LatLng latLng, плавающее масштабирование)
Возвращает CameraUpdate , который перемещает центр экрана на широту и долготу, заданные объектом LatLng , и перемещает его на заданный уровень масштабирования.
статическое обновление камеры
прокруткаBy (поплавок xPixel, поплавок yPixel)
Возвращает CameraUpdate , который прокручивает камеру по карте, смещая центр обзора на указанное количество пикселей в направлениях x и y.
статическое обновление камеры
ZoomBy (плавающее значение, фокус точки)
Возвращает CameraUpdate , который сдвигает уровень масштабирования текущей точки обзора камеры.
статическое обновление камеры
ZoomBy (плавающее количество)
Возвращает CameraUpdate , который сдвигает уровень масштабирования текущей точки обзора камеры.
статическое обновление камеры
приблизить ()
Возвращает CameraUpdate , который увеличивает масштаб карты, перемещая высоту точки обзора ближе к поверхности Земли.
статическое обновление камеры
уменьшить ()
Возвращает CameraUpdate , который уменьшает масштаб карты, перемещая высоту точки обзора дальше от поверхности Земли.
статическое обновление камеры
ZoomTo (плавающее масштабирование)
Возвращает CameraUpdate , который перемещает точку обзора камеры на определенный уровень масштабирования.

Сводка унаследованных методов

Публичные методы

public static CameraUpdate newCameraPosition ( CameraPosition cameraPosition)

Возвращает CameraUpdate , который перемещает камеру в указанное CameraPosition . По сути, это создает преобразование широты, долготы, уровня масштабирования, направления и наклона объекта CameraPosition .

Параметры
камераПозиция
Возврат
  • CameraUpdate , содержащий преобразование.

общедоступная статическая CameraUpdate newLatLng ( LatLng latLng)

Возвращает CameraUpdate , который перемещает центр экрана на широту и долготу, заданные объектом LatLng . Это центрирует камеру на объекте LatLng .

Параметры
широтаДлительность объект LatLng , содержащий желаемую широту и долготу.
Возврат
  • CameraUpdate , содержащий преобразование.

public static CameraUpdate newLatLngBounds (границы LatLngBounds , ширина int, высота int, заполнение int)

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

В отличие от newLatLngBounds(LatLngBounds, int) вы можете использовать CameraUpdate , возвращаемый этим методом, для изменения камеры до этапа макета карты, поскольку аргументы указывают желаемый размер ограничивающей рамки.

Параметры
границы область, которая помещается в ограничивающую рамку
ширина ширина ограничивающей рамки в пикселях (px)
высота высота ограничивающей рамки в пикселях (px)
прокладка дополнительное ограничение размера (в пикселях) ограничивающей рамки
Возврат
  • CameraUpdate , содержащий преобразование.

public static CameraUpdate newLatLngBounds (границы LatLngBounds , заполнение int)

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

Не меняйте камеру с этим обновлением камеры, пока карта не будет подвергнута компоновке (чтобы этот метод правильно определил соответствующую ограничивающую рамку и уровень масштабирования, карта должна иметь размер). В противном случае будет выдано исключение IllegalStateException . НЕдостаточно того, чтобы карта была доступна; вид, содержащий карту, также должен быть подвергнут компоновке, чтобы были определены его размеры. Если вы не можете быть уверены, что это произошло, используйте вместо этого newLatLngBounds(LatLngBounds, int, int, int) и укажите размеры карты вручную.

Параметры
границы регион для размещения на экране
прокладка пространство (в пикселях), которое необходимо оставить между краями ограничивающей рамки и краями представления. Это значение применяется ко всем четырем сторонам ограничивающей рамки.
Возврат
  • CameraUpdate , содержащий преобразование.

public static CameraUpdate newLatLngZoom ( LatLng latLng, плавающее масштабирование)

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

Параметры
широтаДлительность объект LatLng , содержащий желаемую широту и долготу.
масштабировать желаемый уровень масштабирования в диапазоне от 2,0 до 21,0. Значениям ниже этого диапазона присваивается значение 2,0, а значениям выше него — 21,0. Увеличьте значение, чтобы увеличить масштаб. Не во всех областях имеются плитки с максимальным уровнем масштабирования.
Возврат
  • CameraUpdate , содержащий преобразование.

общедоступная статическая прокрутка CameraUpdate (float xPixel, float yPixel)

Возвращает CameraUpdate , который прокручивает камеру по карте, смещая центр обзора на указанное количество пикселей в направлениях x и y.

Примеры:

  • Если xPixel = 5 и yPixel = 0, система прокручивает вправо, перемещая камеру так, что кажется, что карта сдвинута на 5 пикселей влево.
  • Если xPixel = 0 и yPixel = 5, система прокручивает вниз, перемещая камеру так, что кажется, что карта сдвинута на 5 пикселей вверх.

Прокрутка осуществляется относительно текущей ориентации камеры. Например, если камера направлена ​​на 90 градусов, то восток находится «вверх», а прокрутка вправо переместит камеру на юг.

Параметры
xПиксель количество пикселей для горизонтальной прокрутки. Положительное значение перемещает камеру вправо относительно ее текущей ориентации. Отрицательное значение перемещает камеру влево относительно ее текущей ориентации.
yПиксель количество пикселей для вертикальной прокрутки. Положительное значение перемещает камеру вниз относительно ее текущей ориентации. Отрицательное значение перемещает камеру вверх относительно ее текущей ориентации.
Возврат
  • CameraUpdate , содержащий преобразование.

public static CameraUpdate ZoomBy (плавающее количество, фокус на точку)

Возвращает CameraUpdate , который сдвигает уровень масштабирования текущей точки обзора камеры.

Точка, указанная фокусом, останется фиксированной (т. е. она соответствует одной и той же широте/долготе как до, так и после процесса масштабирования).

Этот метод отличается от zoomTo(float) тем, что масштабирование выполняется относительно текущей камеры.

Например, если LatLng (11.11, 22.22) в настоящее время находится в месте экрана (23, 45). После вызова этого метода с масштабом и этим LatLng расположение этого LatLng на экране все равно будет (23, 45).

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

public static CameraUpdate ZoomBy (плавающее количество)

Возвращает CameraUpdate , который сдвигает уровень масштабирования текущей точки обзора камеры.

Этот метод отличается от zoomTo(float) тем, что масштабирование выполняется относительно текущей камеры.

Параметры
количество количество для изменения уровня масштабирования. Положительные значения указывают на приближение к поверхности Земли, а отрицательные значения указывают на удаление от поверхности Земли.
Возврат
  • CameraUpdate , содержащий преобразование.

общедоступный статический CameraUpdate ZoomIn ()

Возвращает CameraUpdate , который увеличивает масштаб карты, перемещая высоту точки обзора ближе к поверхности Земли. Шаг масштабирования составляет 1,0.

Возврат
  • CameraUpdate , содержащий преобразование.

общедоступный статический CameraUpdate ZoomOut ()

Возвращает CameraUpdate , который уменьшает масштаб карты, перемещая высоту точки обзора дальше от поверхности Земли. Шаг масштабирования составляет -1,0.

Возврат
  • CameraUpdate , содержащий преобразование.

общедоступный статический CameraUpdate ZoomTo (плавающее масштабирование)

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

Параметры
масштабировать желаемый уровень масштабирования в диапазоне от 2,0 до 21,0. Значениям ниже этого диапазона присваивается значение 2,0, а значениям выше него — 21,0. Увеличьте значение, чтобы увеличить масштаб. Не во всех областях имеются плитки с максимальным уровнем масштабирования.