public final class CameraUpdateFactory
extends java.lang.Object
CameraUpdate
来进行。
主要有以下几个方法来执行:
Modifier and Type | Method and Description |
---|---|
static CameraUpdate |
newCameraPosition(CameraPosition cameraposition)
由一个
CameraPosition 来生成新的状态变化对象 |
static CameraUpdate |
newLatLng(LatLng latlng)
生成一个把地图移动到指定的经纬度到屏幕中心的状态变化对象
|
static CameraUpdate |
newLatLngBounds(LatLngBounds latlngbounds,
int padding)
把地图移到到以指定的经纬度范围的,并且在这个范围四周加上padding像素的填充。
需要注意的是,sdk 内部的计算是在
CameraPosition.bearing 和 CameraPosition.tilt 都为 0 时得到的计算结果,
用户如果需要地图完全展示 latlngbounds,也需要将地图的 CameraPosition.bearing 和 CameraPosition.tilt 都置为 0。 |
static CameraUpdate |
newLatLngBoundsRect(LatLngBounds latlngbounds,
int leftPadding,
int rightPadding,
int topPadding,
int bottomPadding)
把地图移动到指定经纬度范围,以适应当前屏幕的显示,并且可以为上下左右分别设置填充的像素
|
static CameraUpdate |
newLatLngBoundsWithMapCenter(LatLngBounds latLngBounds,
LatLng mapCenter,
int padding)
以mapCenter为中心,将latLngBounds对应的区域刚好缩放到可视区域内,并且在这个范围四周加上padding像素填充
|
static CameraUpdate |
newLatLngZoom(LatLng latlng,
float zoom)
把地图以latlng为中心,以zoom为缩放级别,移到屏幕中心
|
static CameraUpdate |
rotateTo(float rotate,
float skew)
将地图顺时针旋转rotate度,并且向后倾斜skew度
|
static CameraUpdate |
scrollBy(float xPixel,
float yPixel)
将地图向左下移动xPixel和yPexil像素
|
static CameraUpdate |
zoomBy(float zoomLevelDelta)
在当前的缩放级别下,把缩放级别变化zoomLevelDelta,如果超出了范围,则停止在范围内
|
static CameraUpdate |
zoomBy(float zoomLevelDelta,
Point point)
在当前的缩放级别下,把缩放级别变化zoomLevelDelta,如果超出了范围,则停止在范围内
注:因为依赖于MapView的尺寸,所以在onCreate中直接调用会有问题,可以放在OnMapLoadedCallback中调用
|
static CameraUpdate |
zoomIn()
把地图放大一级
注:执行放zoomIn操作需要获取当前地图状态,如果必须要在onCreate中调用,需要放在OnMapLoadedCallback中执行。
|
static CameraUpdate |
zoomOut()
把地图缩小一级
注:执行放zoomOut操作需要获取当前地图状态,如果必须要在onCreate中调用,需要放在OnMapLoadedCallback中执行。
|
static CameraUpdate |
zoomTo(float zoomLevel)
把地图缩放到目标级别
|
public static CameraUpdate zoomIn()
CameraUpdate
对象public static CameraUpdate zoomOut()
CameraUpdate
对象public static CameraUpdate scrollBy(float xPixel, float yPixel)
xPixel
- 向右移动的像素yPixel
- 向下移动的像素CameraUpdate
对象public static CameraUpdate zoomTo(float zoomLevel)
zoomLevel
- 目标指定级别, 取值范围为 [4.0 ~ 20.0]CameraUpdate
对象public static CameraUpdate zoomBy(float zoomLevelDelta)
zoomLevelDelta
- 要变化的级别数值CameraUpdate
对象public static CameraUpdate zoomBy(float zoomLevelDelta, Point point)
zoomLevelDelta
- 要变化的级别数值point
- 当前地图所处的地图点,移动后屏幕处于中心点CameraUpdate
对象public static CameraUpdate newCameraPosition(CameraPosition cameraposition)
CameraPosition
来生成新的状态变化对象cameraposition
- 地图状态CameraUpdate
对象public static CameraUpdate newLatLng(LatLng latlng)
latlng
- 目标经纬度CameraUpdate
对象public static CameraUpdate newLatLngZoom(LatLng latlng, float zoom)
latlng
- 目标经纬度zoom
- 新的指定级别, 取值范围为 [3.0 ~ 19.0]CameraUpdate
对象public static CameraUpdate newLatLngBounds(LatLngBounds latlngbounds, int padding)
CameraPosition.bearing
和 CameraPosition.tilt
都为 0 时得到的计算结果,
用户如果需要地图完全展示 latlngbounds,也需要将地图的 CameraPosition.bearing
和 CameraPosition.tilt
都置为 0。latlngbounds
- 经纬度范围 LatLngBounds
padding
- 四周填充的像素CameraUpdate
对象public static CameraUpdate newLatLngBoundsRect(LatLngBounds latlngbounds, int leftPadding, int rightPadding, int topPadding, int bottomPadding)
latlngbounds
- 经纬度范围leftPadding
- 左侧填充像素rightPadding
- 右侧填充像素topPadding
- 顶部填充像素bottomPadding
- 底部填充像素CameraUpdate
对象public static CameraUpdate rotateTo(float rotate, float skew)
rotate
- 要旋转的度数skew
- 倾斜角度 取值为 [0.0 ~ 45.0]CameraUpdate
对象public static CameraUpdate newLatLngBoundsWithMapCenter(LatLngBounds latLngBounds, LatLng mapCenter, int padding)
latLngBounds
- 根据经纬度序列得到的区域 BoundmapCenter
- 变换视野后期望的地图视野中心padding
- 四周填边,单位px