UISettingDemo.java

代码没有什么可以说的,就是对MapController类各种方法的调用,那好,我们今天就来八一八MapController。

1MapController怎么获取。

MapController传统的是在MapView findById之后通过调用MapView的getController()获取的。不过MapController有自己的构造方法:MapController(MapView mapView)。其实也是通过mapview获取的,换汤不换药。

2 有哪些方法。MapController的方法主要是对地图的放大缩小,俯视旋转,手势键盘处理,指南针位置,动画等。其实动画的方法animateTo ,这个方法会触MKMapViewListener的下列方法,这个第三节提到的

  1. @Override
  2. publicvoidonMapAnimationFinish(){
  3. /**
  4. *地图完成带动画的操作(如:animationTo())后,此回调被触发
  5. */
  6. }


看看MapController有哪些方法。

animateTo

public void animateTo(GeoPointpoint)
将给定的位置点以动画形式移动至地图中心 对以给定的点GeoPoint,开始动画显示地图。

animateTo

public void animateTo(GeoPointpoint,                      Messagemessage)
将给定的位置点以动画形式移动至地图中心. 如果动画自然结束,则分发给定的消息。如果动画中途被放弃,则不分发给定的消息。

onKey

public boolean onKey(Viewv,                     intkeyCode,                     KeyEventevent)

scrollBy

public void scrollBy(intx,                     inty)
将给定的屏幕像素点滚动至地图中心.

参数:
x- 水平滚动的像素数
y- 垂直滚动的像素数

enableClick

public void enableClick(booleanisEnable)

setCenter

public void setCenter(GeoPointpoint)
在给定的中心点GeoPoint上设置地图视图。

setRotation

public void setRotation(introtate)
设置地图旋转角度

参数:
rotate- 旋转角度,单位:度。范围:-180~180

setOverlooking

public void setOverlooking(intoverlook)
设置地图俯视角度

参数:
overlook- 俯视角度,单位:度。范围:0~-45

setZoom

public float setZoom(floatzoomLevel)
设置地图的缩放级别。 这个值的取值范围是[3,19]。

参数:
zoomLevel- 缩放级别,取值范围是[3,19]
返回:
新的缩放级别,取值范围[3,19]。

zoomIn

public boolean zoomIn()
放大一个级别。

返回:
如果缩放成功,返回true,如果达到最大极限,返回false。

zoomInFixing

public boolean zoomInFixing(intxPixel,                            intyPixel)
放大一个级别。

这个放大会平移地图使之保持在屏幕的一个固定点上。通过像素坐标来设定固定点。

参数:
xPixel- 地图左边固定点缩放的偏移量。
yPixel- 地图上方固定点缩放的偏移量。
返回:
如果放大成功,返回true;如果达到最大极限,返回false。

zoomOut

public boolean zoomOut()
缩小一个级别。

返回:
如果成功缩小返回true,如果达到最小极限,则返回false。

zoomOutFixing

public boolean zoomOutFixing(intxPixel,                             intyPixel)
缩小一个级别。

这个缩放也将把地图平移到屏幕的一个固定点上。通过像素坐标来设定固定点。

参数:
xPixel- 地图左边固定缩放的偏移量
yPixel- 地图上边固定缩放的偏移量
返回:
如果缩放成功,返回true;如果达到最小极限,返回false。

zoomToSpan

public void zoomToSpan(intlatSpanE6,                       intlonSpanE6)
缩放地图到能容下指定的经纬度范围

参数:
latSpanE6- 纬度范围
lonSpanE6- 经度范围

handleFling

public boolean handleFling(MotionEvente1,                           MotionEvente2,                           floatvelocityX,                           floatvelocityY)
处理fling事件

返回:
true 事件被处理了, false 事件没有被处理

setCompassMargin

public void setCompassMargin(intx,                             inty)
设置指南针位置

参数:
x- 指南针中点x坐标值 , 坐标系原点为MapView左上顶点
y- 指南针中点y坐标值 , 坐标系原点为MapView左上顶点

isZoomGesturesEnabled

public boolean isZoomGesturesEnabled()
获取缩放手势开关状态

返回:
true: 缩放手势开启 , false: 缩放手势关闭

setZoomGesturesEnabled

public void setZoomGesturesEnabled(booleanisZoomGesturesEnabled)
设置缩放手势状态

参数:
isZoomGesturesEnabled- true: 缩放手势开启 , false: 缩放手势关闭

isRotationGesturesEnabled

public boolean isRotationGesturesEnabled()
获取旋转手势开关状态

返回:
true: 旋转手势开启 , false: 旋转手势关闭

setRotationGesturesEnabled

public void setRotationGesturesEnabled(booleanisRotationGesturesEnabled)
设置旋转手势开关状态

参数:
isRotationGesturesEnabled- true: 旋转手势开启 , false: 旋转手势关闭

isOverlookingGesturesEnabled

public boolean isOverlookingGesturesEnabled()
设置俯视手势状态

返回:
true: 俯视手势开启 , false: 俯视手势关闭

setOverlookingGesturesEnabled

public void setOverlookingGesturesEnabled(booleanisOverlookingGesturesEnabled)
设置俯视手势开关状态

参数:
isOverlookingGesturesEnabled- true: 俯视手势开启 , false: 俯视手势关闭

isScrollGesturesEnabled

public boolean isScrollGesturesEnabled()
获取平移手势开关状态

返回:
true: 平移手势开启 , false: 平移手势关闭

setScrollGesturesEnabled

public void setScrollGesturesEnabled(booleanisScrollGesturesEnabled)
设置平移手势开关状态

参数:
isScrollGesturesEnabled- true: 平移手势开启 , false: 平移手势关闭

更多相关文章

  1. Activity的四种启动模式下的生命周期(全)2019.6.11
  2. Android利用手势完成屏幕密码锁功能
  3. Android(安卓)自动化测试―robotium(三)EditText控件
  4. WebView Android(安卓)调用js且需要获取返回结果
  5. [Flutter]监听Android返回键事件
  6. Android连续点击两次返回键退出应用,提示“再按一次退出应用"
  7. APIcloud 按两次返回键退出程序,android按两次返回键退出程序
  8. Android(安卓)启动另外activity并返回结果
  9. 【WebView】Android(安卓)WebView专栏——基本使用及常见问题

随机推荐

  1. Android——内存篇:Android中5种最常见的
  2. android详细解释键盘和鼠标事件
  3. 为了获取下一个10亿用户,Google的布局其实
  4. Android 企业需求与开发者状况简析(转)
  5. Android内核开发:序
  6. Android(安卓)adb使用sqlite3对一个数据
  7. 关于成立北京Android爱好者俱乐部的声明
  8. Android的Merge讲解与实例
  9. Android逆向分析之dex2jar和jd-gui使用
  10. Android输入法框架系统(上)