mapview Java,Class:android核心类/MapView

章景同
2023-12-01

出自百度地图API

跳转到:导航

,

搜索

MapView

com.baidu.mapapi

类 MapView

java.lang.Object

∟ ViewGroup

∟ com.baidu.mapapi.MapView

public class MapView

extends ViewGroup

显示地图的View。

一个显示地图的视图,当被焦点选中时,它能捕获按键事件和触摸手势去平移和缩放地图。

嵌套类摘要

字段摘要

类型名称

com.baidu.platform.comapi.map.MapGLSurfaceView

构造方法摘要

方法

MapView(Context context)

构造一个MapView对象。

MapView(Context context, AttributeSet attrs)

构造一个MapView对象。

MapView(Context context, AttributeSet attrs, int defStyle)

构造一个MapView对象。

方法摘要

返回类型方法

protected booleancheckLayoutParams(android.view.ViewGroup.LayoutParams p)

仅检查p是否是的一个MapView.LayoutParams实例。

voidcomputeScroll()

捕获滚动事件,用它们去平移地图。

voiddisplayZoomControls(boolean takeFocus)

显示缩放控件,可以选择是否请求焦点选中以便通过按键访问。

protected android.view.ViewGroup.LayoutParamsgenerateDefaultLayoutParams()

返回一个Layout参数的集合,其中参数带有ViewGroup.LayoutParams.WRAP_CONTENT的宽度,ViewGroup.LayoutParams.WRAP_CONTENT高度和坐标(0,0)。

protected android.view.ViewGroup.LayoutParamsgenerateLayoutParams(android.view.ViewGroup.LayoutParams p)

android.view.ViewGroup.LayoutParamsgenerateLayoutParams(AttributeSet attrs)

getController()

返回地图的MapController,这个对象可用于控制和驱动平移和缩放。

intgetLatitudeSpan()

当前纬线的跨度(从地图的上边缘到下边缘),十进制度×1,000,000。

intgetLongitudeSpan()

当前经度的跨度(从地图的左边缘到地图的右边缘),单位:十进制的度×1,000,000。

getMapCenter()

返回当前地图中心点位置,做为一个GeoPoint(经度、纬度)的对象。

intgetMaxZoomLevel()

返回当前视图中心点的最大缩放级别。

java.util.ListgetOverlays()

获取Overlay列表。

intgetZoomLevel()

返回当前地图的缩放级别。

boolean

booleanisTraffic()

是否显示交通流量。

protected void

protected voidonDraw(Canvas canvas)

voidonFocusChanged(boolean hasFocus, int direction, Rect previouslyFocusedRect)

当这个视图的焦点状态变化时被视图系统调用。

booleanonKeyDown(int keyCode, KeyEvent event)

把按键传送到overlay。

booleanonKeyUp(int keyCode, KeyEvent event)

把按键传送到overlay。

protected voidonLayout(boolean flag, int l, int t, int r, int b)

protected voidonMeasure(int widthMeasureSpec, int heightMeasureSpec)

voidonRestoreInstanceState(Bundle state)

把MapView的状态恢复到一个Bundle。

voidonSaveInstanceState(Bundle state)

把MapView的状态存储到一个Bundle中。

protected voidonSizeChanged(int w, int h, int oldw, int oldh)

重新调整地图对象的尺寸。

booleanonTouchEvent(MotionEvent event)

首先把touch事件传送到overlay,如果它不处理它们,就把事件再传送到手势探测器,然后分发探测到的手势。

booleanonTrackballEvent(MotionEvent event)

把trackball事件首先传送到overlay,如果它们不处理消息,尝试取平移和点击。

voidonWindowFocusChanged(boolean hasFocus)

当包含这个视图的窗口得到或是去焦点时被调用。

voidsetDragMode(int mode)

设置当前拖拽模式,0:拖拽有动画 ;1:拖拽无动画。默认值为0,即有拖拽动画效果。

voidsetDrawOverlayWhenZooming(boolean bDraw)

设置在缩放动画过程中是否绘制overlay,默认为不绘制。 如果绘制,在覆盖物很多的情况下效率会有损失。 自1.1版本之后支持。

voidsetBuiltInZoomControls(boolean on)

设置是否启用内置的缩放控件。如果启用,MapView将自动显示这些缩放控件。 默认启用缩放控件。

voidsetReticleDrawMode(com.baidu.mapapi.MapView.ReticleDrawMode mode)

暂不支持。

voidsetSatellite(boolean on)

设置是否打开卫星图层, 默认为关闭

voidsetStreetView(boolean on)

暂不支持。

voidsetTraffic(boolean on)

设置是否打开交通流量图层, 默认关闭

voidregMapViewListener(BMapManager bmapMan, MKMapViewListener listener)

注册地图显示事件监听器。

booleanisDoubleClickZooming()

检查mapview是否支持双击放大效果。

voidsetDoubleClickZooming(boolean bDoubleClickZooming)

设置mapview是否支持双击放大效果。默认值为true,即支持双击放大效果。

从类 java.lang.Object 继承的方法

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

字段详细信息

mBaiduMapView

com.baidu.platform.comapi.map.MapGLSurfaceView mBaiduMapView

MAX_ZOOM_LEVEL

static final int MAX_ZOOM_LEVEL

另请参见:

MIN_ZOOM_LEVEL

static final int MIN_ZOOM_LEVEL

另请参见:

方法详细信息

canCoverCenter

public boolean canCoverCenter()

检查当前是否有地图贴片覆盖地图中心点。返回:

如果地图中心有一个地图贴片,返回true,否则返回false。

checkLayoutParams

protected boolean checkLayoutParams(android.view.ViewGroup.LayoutParams p)

仅检查p是否是的一个MapView.LayoutParams实例。参数:

p - 待验证的LayoutParams对象。返回:

如果p是MapView LayoutParams的一个实例,返回true;否则返回false。

computeScroll

public void computeScroll()

捕获滚动事件,用它们去平移地图。

displayZoomControls

public void displayZoomControls(boolean takeFocus)

显示缩放控件,可以选择是否请求焦点选中以便通过按键访问。参数:

takeFocus - 如果为true,则焦点选中缩放控件。否则不对缩放控件聚焦。

generateDefaultLayoutParams

protected android.view.ViewGroup.LayoutParams generateDefaultLayoutParams()

返回一个Layout参数的集合,其中参数带有ViewGroup.LayoutParams.WRAP_CONTENT的宽度,ViewGroup.LayoutParams.WRAP_CONTENT高度和坐标(0,0)。

generateLayoutParams

public android.view.ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs)

generateLayoutParams

protected android.view.ViewGroup.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams p)

getController

public MapController getController()

返回地图的MapController,这个对象可用于控制和驱动平移和缩放。返回:

地图的MapController。

getLatitudeSpan

public int getLatitudeSpan()

当前纬线的跨度(从地图的上边缘到下边缘),十进制度×1,000,000。返回:

纬线跨度,十进制×1,000,000。

getLongitudeSpan

public int getLongitudeSpan()

当前经度的跨度(从地图的左边缘到地图的右边缘),单位:十进制的度×1,000,000。返回:

经线的跨度,十进制度×1,000,000。

getMapCenter

public GeoPoint getMapCenter()

返回当前地图中心点位置,做为一个GeoPoint(经度、纬度)的对象。返回:

地图中心点的GeoPoint对象。

getMaxZoomLevel

public int getMaxZoomLevel()

返回当前视图中心点的最大缩放级别。返回:

地图当前的中心的最大缩放级别。

getOverlays

public final java.util.List getOverlays()

获取Overlay列表。 这个列表中的任何一个 Overlay都将被绘制(以升序方式),都能收到事件(以降序方式,直到返回true)。返回:

Overlay列表。

getProjection

public Projection getProjection()

获取屏幕像素坐标和经纬度对之间的转换。返回:

地图在当前状态的投影转换。用户不应该把这个对象用于其它绘制,因为地图的投影转换是变化的。

getZoomControls

@Deprecated

public View getZoomControls()

已过时。

getZoomLevel

public int getZoomLevel()

返回当前地图的缩放级别。返回:

地图的缩放级别。

isSatellite

public boolean isSatellite()

是否显示卫星图

isStreetView

public boolean isStreetView()

isTraffic

public boolean isTraffic()

是否显示交通流量。返回:

如果地图为显示交通流量模式,返回true,否则返回false。

onDetachedFromWindow

protected void onDetachedFromWindow()

当被分离调用,清除缩放控件。

onFocusChanged

public void onFocusChanged(boolean hasFocus, int direction, Rect previouslyFocusedRect)

当这个视图的焦点状态变化时被视图系统调用。 捕获焦点变化事件,终止平移。

onKeyDown

public boolean onKeyDown(int keyCode, KeyEvent event)

把按键传送到overlay。

onKeyUp

public boolean onKeyUp(int keyCode, KeyEvent event)

把按键传送到overlay。

onTouchEvent

public boolean onTouchEvent(MotionEvent event)

首先把touch事件传送到overlay,如果它不处理它们,就把事件再传送到手势探测器,然后分发探测到的手势。

onTrackballEvent

public boolean onTrackballEvent(MotionEvent event)

把trackball事件首先传送到overlay,如果它们不处理消息,尝试取平移和点击。

onLayout

protected void onLayout(boolean flag, int l, int t, int r, int b)

onDraw

protected void onDraw(Canvas canvas)

onMeasure

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)

onRestoreInstanceState

public void onRestoreInstanceState(Bundle state)

把MapView的状态恢复到一个Bundle。 当前,这个函数只恢复缩放窗口的中心、缩放级别、和交通状态。参数:

state - 。

onSaveInstanceState

public void onSaveInstanceState(Bundle state)

把MapView的状态存储到一个Bundle中。 当前,此函数只存储缩放窗口的中心、缩放级别、和交通流量的状态。参数:

state - 。

onSizeChanged

protected void onSizeChanged(int w, int h, int oldw, int oldh)

显示缩放控件,可以选择是否请求焦点选中以便通过按键访问。重新调整地图对象的尺寸。 如果覆盖该方法,一定要通过调用super.onSizeChanged()。

onWindowFocusChanged

public void onWindowFocusChanged(boolean hasFocus)

当包含这个视图的窗口得到或是去焦点时被调用。 捕获焦点变化事件后终止平移。

preLoad

public void preLoad()

setDragMode

public void setDragMode(int mode)

设置当前拖拽模式0:拖拽有动画 ;1:拖拽无动画 默认值为0,即有拖拽动画效果

setDrawOverlayWhenZooming

public void setDrawOverlayWhenZooming(boolean bDraw)

设置在缩放动画过程中是否绘制overlay,默认为不绘制。 如果绘制,在覆盖物很多的情况下效率会有损失。自1.1版本之后支持。参数:

bDraw - 在缩放动画过程中是否绘制overlay,默认为不绘制。

setBuiltInZoomControls

public void setBuiltInZoomControls(boolean on)

设置是否启用内置的缩放控件。 如果启用,MapView将自动显示这些缩放控件。默认启用缩放控件参数:

on - 内置的缩放控件是否启用。如果是false,用户处理缩放控件在界面上的显示。

setReticleDrawMode

public void setReticleDrawMode(com.baidu.mapapi.MapView.ReticleDrawMode mode)

暂不支持

setSatellite

public void setSatellite(boolean on)

设置是否打开卫星图,默认关闭

setStreetView

public void setStreetView(boolean on)

暂不支持

setTraffic

public void setTraffic(boolean on)

设置是否打开交通流量图层,默认关闭

regMapViewListener

public void regMapViewListener(BMapManager bmapMan, MKMapViewListener listener)

注册地图显示事件监听器

isDoubleClickZooming

public boolean isDoubleClickZooming()

检查mapview是否支持双击放大效果

setDoubleClickZooming

public void setDoubleClickZooming(boolean bDoubleClickZooming)

设置mapview是否支持双击放大效果,默认值为true,即支持双击放大效果

 类似资料: