A class containing methods for creating CameraUpdate
      objects that change a map's camera. To modify the map's camera, call 
      GoogleMap.animateCamera(CameraUpdate), 
      GoogleMap.animateCamera(CameraUpdate, GoogleMap.CancelableCallback) or
      
      GoogleMap.moveCamera(CameraUpdate), using a CameraUpdate
      object created with this class.
For example, to zoom in on a map, you can use the following code:
GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 Prior to using any methods from this class, you must do one of the following to ensure that this class is initialized:
- Wait for a GoogleMapto become available from aMapFragmentorMapViewthat you have added to your application. You can obtain theGoogleMapinstance by callinggetMapAsync()and waiting for theonMapReady(GoogleMap map)callback.
- Call MapsInitializer.initialize(Context). As long as aGooglePlayServicesNotAvailableExceptionisn't thrown, this class will be correctly initialized.
Developer Guide
For more information, read the Camera and View developer guide.
Public Method Summary
| static CameraUpdate | 
                  
                  newCameraPosition(CameraPosition
                  cameraPosition)
                   
                    Returns a  CameraUpdatethat moves the camera to a specifiedCameraPosition. | 
| static CameraUpdate | 
                  
                  newLatLng(LatLng
                  latLng)
                   
                    Returns a  CameraUpdatethat moves the center of the screen to a latitude and longitude specified by aLatLngobject. | 
| static CameraUpdate | 
                  
                  newLatLngBounds(LatLngBounds
                  bounds, int padding)
                   
                    Returns a  CameraUpdatethat transforms the camera such that the specified latitude/longitude bounds
                    are centered on screen at the greatest possible zoom level. | 
| static CameraUpdate | 
                  
                  newLatLngBounds(LatLngBounds
                  bounds, int width, int height, int padding)
                   
                    Returns a  CameraUpdatethat transforms the camera such that the specified latitude/longitude bounds
                    are centered on screen within a bounding box of specified dimensions at the
                    greatest possible zoom level. | 
| static CameraUpdate | 
                  
                  newLatLngZoom(LatLng
                  latLng, float zoom)
                   
                    Returns a  CameraUpdatethat moves the center of the screen to a latitude and longitude specified by aLatLngobject, and moves to the given zoom level. | 
| static CameraUpdate | 
                  
                  scrollBy(float xPixel, float yPixel)
                   
                    Returns a  CameraUpdatethat scrolls the camera over the map, shifting the center of view by the
                    specified number of pixels in the x and y directions. | 
| static CameraUpdate | 
                  
                  zoomBy(float amount, Point focus)
                   
                    Returns a  CameraUpdatethat shifts the zoom level of the current camera viewpoint. | 
| static CameraUpdate | 
                  
                  zoomBy(float amount)
                   
                    Returns a  CameraUpdatethat shifts the zoom level of the current camera viewpoint. | 
| static CameraUpdate | 
                  
                  zoomIn()
                   
                    Returns a  CameraUpdatethat zooms in on the map by moving the viewpoint's height closer to the Earth's
                    surface. | 
| static CameraUpdate | 
                  
                  zoomOut()
                   
                    Returns a  CameraUpdatethat zooms out on the map by moving the viewpoint's height farther away from
                    the Earth's surface. | 
| static CameraUpdate | 
                  
                  zoomTo(float zoom)
                   
                    Returns a  CameraUpdatethat moves the camera viewpoint to a particular zoom level. | 
Inherited Method Summary
Public Methods
public static CameraUpdate newCameraPosition (CameraPosition cameraPosition)
Returns a CameraUpdate
            that moves the camera to a specified CameraPosition.
            In effect, this creates a transformation from the CameraPosition
            object's latitude, longitude, zoom level, bearing and tilt.
Parameters
| cameraPosition | The requested position. Must not be null. | 
|---|
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate newLatLng (LatLng latLng)
Returns a CameraUpdate
            that moves the center of the screen to a latitude and longitude specified by a
            LatLng
            object. This centers the camera on the LatLng
            object.
Parameters
| latLng | a LatLngobject containing the desired latitude and longitude. Must not benull. | 
|---|
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate newLatLngBounds (LatLngBounds bounds, int padding)
Returns a CameraUpdate
            that transforms the camera such that the specified latitude/longitude bounds are
            centered on screen at the greatest possible zoom level. You can specify padding, in
            order to inset the bounding box from the map view's edges. The returned CameraUpdate
            has a bearing of 0 and a tilt of 0.
Do not change the camera with this camera update until the map has undergone layout
            (in order for this method to correctly determine the appropriate bounding box and zoom
            level, the map must have a size). Otherwise an IllegalStateException
            will be thrown. It is NOT sufficient for the map to be available; the view containing
            the map must have also undergone layout such that its dimensions have been determined.
            If you cannot be sure that this has occurred, use 
            newLatLngBounds(LatLngBounds, int, int, int) instead and provide the
            dimensions of the map manually.
Parameters
| bounds | region to fit on screen. Must not be null. | 
|---|---|
| padding | space (in px) to leave between the bounding box edges and the view edges. This value is applied to all four sides of the bounding box. | 
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate newLatLngBounds (LatLngBounds bounds, int width, int height, int padding)
Returns a CameraUpdate
            that transforms the camera such that the specified latitude/longitude bounds are
            centered on screen within a bounding box of specified dimensions at the greatest
            possible zoom level. You can specify additional padding, to further restrict the size
            of the bounding box. The returned CameraUpdate
            has a bearing of 0 and a tilt of 0.
Unlike 
            newLatLngBounds(LatLngBounds, int), you can use the CameraUpdate
            returned by this method to change the camera prior to the map's the layout phase,
            because the arguments specify the desired size of the bounding box.
Parameters
| bounds | the region to fit in the bounding box. Must not be null. | 
|---|---|
| width | bounding box width in pixels (px) | 
| height | bounding box height in pixels (px) | 
| padding | additional size restriction (in px) of the bounding box | 
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate newLatLngZoom (LatLng latLng, float zoom)
Returns a CameraUpdate
            that moves the center of the screen to a latitude and longitude specified by a
            LatLng
            object, and moves to the given zoom level.
Parameters
| latLng | a LatLngobject containing the desired latitude and longitude. Must not benull. | 
|---|---|
| zoom | the desired zoom level, in the range of 2.0 to 21.0. Values below this range are set to 2.0, and values above it are set to 21.0. Increase the value to zoom in. Not all areas have tiles at the largest zoom levels. | 
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate scrollBy (float xPixel, float yPixel)
Returns a CameraUpdate
            that scrolls the camera over the map, shifting the center of view by the specified
            number of pixels in the x and y directions.
Examples:
- If xPixel = 5 and yPixel = 0, the system scrolls right by moving the camera so that the map appears to have shifted 5 pixels to the left.
- If xPixel = 0 and yPixel = 5, the system scrolls down by moving the camera so that the map appears to have shifted 5 pixels upwards.
The scrolling is relative to the camera's current orientation. For example, if the camera is bearing 90 degrees, then east is "up" and scrolling right will move the camera south.
Parameters
| xPixel | the number of pixels to scroll horizontally. A positive value moves the camera to the right, with respect to its current orientation. A negative value moves the camera to the left, with respect to its current orientation. | 
|---|---|
| yPixel | the number of pixels to scroll vertically. A positive value moves the camera downwards, with respect to its current orientation. A negative value moves the camera upwards, with respect to its current orientation. | 
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate zoomBy (float amount, Point focus)
Returns a CameraUpdate
            that shifts the zoom level of the current camera viewpoint.
A point specified by focus will remain fixed (i.e., it corresponds to the same lat/long both before and after the zoom process).
This method is different to 
            zoomTo(float) in that zoom is relative to the current camera.
For example, if the LatLng
            (11.11, 22.22) is currently at the screen location (23, 45). After calling this method
            with a zoom amount and this LatLng,
            the screen location of this LatLng
            will still be (23, 45).
Parameters
| amount | amount to change the zoom level. Positive values indicate zooming closer to the surface of the Earth while negative values indicate zooming away from the surface of the Earth. | 
|---|---|
| focus | pixel location on the screen that is to remain fixed after the zooming process.
                The lat/long that was at that pixel location before the camera move will remain the
                same after the camera has moved. Must not be null. | 
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate zoomBy (float amount)
Returns a CameraUpdate
            that shifts the zoom level of the current camera viewpoint.
This method is different to 
            zoomTo(float) in that zoom is relative to the current camera.
Parameters
| amount | amount to change the zoom level. Positive values indicate zooming closer to the surface of the Earth while negative values indicate zooming away from the surface of the Earth. | 
|---|
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate zoomIn ()
Returns a CameraUpdate
            that zooms in on the map by moving the viewpoint's height closer to the Earth's
            surface. The zoom increment is 1.0.
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate zoomOut ()
Returns a CameraUpdate
            that zooms out on the map by moving the viewpoint's height farther away from the
            Earth's surface. The zoom increment is -1.0.
Returns
- a CameraUpdatecontaining the transformation.
public static CameraUpdate zoomTo (float zoom)
Returns a CameraUpdate
            that moves the camera viewpoint to a particular zoom level.
Parameters
| zoom | the desired zoom level, in the range of 2.0 to 21.0. Values below this range are set to 2.0, and values above it are set to 21.0. Increase the value to zoom in. Not all areas have tiles at the largest zoom levels. | 
|---|