地图类型

地图内的谷歌地图的Android API的种类有很多。地图的类型管辖地图的整体代表性。例如,地图集通常包含政治地图,专注于显示边界和道路地图,显示了一个城市或地区的所有道路。

Android的谷歌地图API提供了四种类型的地图,以及一个选项,在没有地图:

正常
典型的路线图。道路,一些人造的功能,以及重要的自然特性如江河。道和功能的标签也可见。
混合
道路地图的卫星照片数据。道和功能的标签也可见。
卫星
卫星照片数据。道和功能的标签是不可见的。
地形
地形数据。地图包括颜色,轮廓线和标签,以及透视阴影。一些道路和标签也清晰可见。
没有瓷砖。该地图将呈现一个空网格加载没有瓷砖。

更改地图类型

要设置的地图类型,调用的GoogleMap的对象的 setMapType的“()方法,通过GoogleMap的类型定义的常量之一。例如,要显示的卫星地图:

GoogleMap的地图; 
...
/ /设置地图类型是“混合型”的
地图。setMapType (GoogleMap的MAP_TYPE_HYBRID );

下面的图像显示正常,在相同位置上的混合动力和地形图的比较:

配置初始状态

地图API允许您配置在地图的初始状态,以满足您的应用程序的需求。您可以指定以下内容:

  • 摄像头的位置,包括:位置,缩放,轴承和倾斜。请参阅相机定位的更多细节,改变地图
  • 地图类型。
  • 无论是变焦按钮和/或罗盘会出现在屏幕上。
  • 这手势,用户可以用它来操纵相机。

可以通过XML配置的地图的初始状态,如果你已经加入了地图活动的布局文件,或编程,如果你添加地图方式。

使用XML属性

本节介绍如何设置地图的初始状态,如果你已经添加了一个地图到您的应用程序使用一个XML布局文件。

地图API定义了一组自定义的XML属性为 MapFragmentMapView类,您可以使用直接从布局文件来配置初始地图状态。目前定义的属性如下:

  • 地图类型。这使您可以指定地图显示的类型。有效值包括:正常混合动力卫星地形
  • cameraTargetLatcameraTargetLng cameraZoomcameraBearing cameraTilt。这允许你指定摄像机的初始位置。摄像机位置和它的属性的更多细节,请参阅这里
  • uiZoomControls中uiCompass。这允许你指定是否要出现在地图上的变焦控制和指南针。见 更多细节UiSettings
  • uiZoomGesturesuiScrollGesturesuiRotateGesturesuiTiltGestures。这允许你指定哪个手势启用/禁用的互动地图。见更多细节UiSettings
  • zOrderOnTop。控制是否在地图视图的表面被放置在其窗口的顶部。有关更多详细信息,请参阅SurfaceView.setZOrderOnTop(布尔)。请注意,这将覆盖所有其他意见,可能会出现在地图上(例如,变焦控制,“我的位置”按钮)。
  • useViewLifecycle。只适用与MapFragment。此属性指定是否应该被束缚的生命周期在地图片段的视图或片段本身。更多详细信息,请参阅这里

为了使用这些自定义的属性,你必须先在你的XML布局文件中添加以下命名空间声明(你可以选择任何命名空间,它不具备地图):

XMLNS :地图“http://schemas.android.com/apk/res-auto”:

然后,您可以添加到您的元器件的布局图:前缀与属性,你会与标准Android属性。

下面的XML代码片段显示如何配置MapFragment的一些自定义的选项(相同的属性,可以应用到一个MapView类):

<fragmentxmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:map="http://schemas.android.com/apk/res-auto"
  android:id="@+id/map"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  class="com.google.android.gms.maps.SupportMapFragment"
  map:cameraBearing="112.5"
  map:cameraTargetLat="-33.796923"
  map:cameraTargetLng="150.922433"
  map:cameraTilt="30"
  map:cameraZoom="13"
  map:mapType="normal"
  map:uiCompass="false"
  map:uiRotateGestures="true"
  map:uiScrollGestures="false"
  map:uiTiltGestures="true"
  map:uiZoomControls="false"
  map:uiZoomGestures="true"/>

以编程

Google Maps Android API v2 (4)- 地图类型的更多相关文章

  1. Google Maps Android API v2 (2)- 地图对象

    地图对象 Android的谷歌地图API允许你在你的Andr​​oid应用程序中显示谷歌地图.在谷歌地图移动(GMM)的应用程序,你看到的地图,这些地图具有相同的外观和API暴露出许多相同的功能.GM ...

  2. Google Maps Android API v2 (3)- 地图添加到Android应用程序

    添加地图的基本步骤是: (一旦)按照以下步骤[入门] [开始],获得API,获取密钥所需的属性,并添加到您的Android清单. 添加一个碎片对象 要处理地图的活动.做到这一点最简单的方法是增加一个  ...

  3. Google Maps Android API v2 (1)- 入门

    才可以开始工作的API,你将需要下载的API,并确保你有一个谷歌地图Android的API V2关键.API和关键是免费提供的. 概观 获得谷歌地图Android的API V2 谷歌地图API密钥 显 ...

  4. google map android api v2

    我在这主要列举几个需要注意的问题: 1.需要注意使用的api版本的问题,例如google map android api v1就和v2差别很大,包括申请key方面,所以在搜索资料的时候一定注意版本问题 ...

  5. Google Map Android api V2 中使用MapView遇到CameraUpdateFactory is not initialized!的解决办法

    先说一下 Map V2 API Key 的问题吧: 在打包APP时需要自己生成一个XXX.keystore 用这个密室库生成的SHA1去申请的key 作为AndroidManifest.xml 中的K ...

  6. [转]MBTiles 离线地图演示 - 基于 Google Maps JavaScript API v3 + SQLite

    MBTiles 是一种地图瓦片存储的数据规范,它使用SQLite数据库,可大大提高海量地图瓦片的读取速度,比通过瓦片文件方式的读取要快很多,适用于Android.IPhone等智能手机的离线地图存储. ...

  7. ☀【移动】Google Maps JavaScript API v3

    Google Maps JavaScript API v3https://developers.google.com/maps/documentation/javascript/tutorial?hl ...

  8. 谷歌地图,国内使用Google Maps JavaScript API,国外业务

    目前还是得墙 <!DOCTYPE html> <html> <head> <meta name="viewport" content=&q ...

  9. 国内使用Google Maps JavaScript API

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="ini ...

随机推荐

  1. Delphi 的绘图功能(29篇博客)

    http://www.cnblogs.com/del/category/123038.html

  2. 《转》VC++多线程编程

    原地址:http://www.cnblogs.com/wxfasdic/archive/2010/09/23/1833522.html 留个纪念,不错的总结.十个例子清晰列举啦多线程编程的奥妙.  V ...

  3. Win8下在Vmware11中安装使用苹果系统OS X 10.10

    原文:Win8下在Vmware11中安装使用苹果系统OS X 10.10   近来因为需要做 iOS 的项目,所以需要多花一些时间看看敲敲代码.因为自己手头上并没有 Mac(过年为了闲的时候能玩玩游戏 ...

  4. Android 实现自己定义多级树控件和全选与反选的效果

    博文開始之前,首先要感谢大牛:(lmj623565791),本博文是在其博文http://blog.csdn.net/lmj623565791/article/details/40212367基础上进 ...

  5. Android中关于JNI 的学习(六)JNI中注冊方法的实现

    在前面的样例中,我们会发现,当在Java类中定义一个方法的时候,例如以下: public class ParamTransferTest { public static int testval = 1 ...

  6. [华为机试练习题]50.求M的N次方的最后三位

    题目 描写叙述: 正整数M 的N次方有可能是一个很大的数字,我们仅仅求该数字的最后三位 例1: 比方输入5和3 ,5的3次方为125.则输出为125 例2: 比方输入2和10 2的10次方为1024 ...

  7. poj1243(经典dp)

    题目链接:http://poj.org/problem?id=1243 题意:让你猜一个物品的价格,猜低了或者猜高了都会提示你.G,L,表示你有G次机会猜一个数,如果猜错了,G会减少1次,如果你的错误 ...

  8. (白书训练计划)UVa 120 Stacks of Flapjacks(构造法)

    题目地址:UVa 120 水题. 从最大的開始移,每次都把大的先翻到最上面,再翻到以下. 代码例如以下: #include <iostream> #include <cstdio&g ...

  9. HTML5之画布的拖拽/拖放

    <!DOCTYPE HTML> <html> <head> <script type="text/javascript"> func ...

  10. iOS_UIButton 简单操作

    UIButton 风格 typedef NS_ENUM(NSInteger, UIButtonType) { UIButtonTypeCustom = 0, // no button type UIB ...