http://lemberg.github.io/mappwidget/user_guide.html 最近在看一些导游类应用,发现一些景区的导览图使用的完全是自定义地图,也就是手绘地图.这种小范围使用的,专业的地图给人以亲切的感觉.但是他们是如何实现的呢,网上找了找实现思路,都没有太满意的. 在一家英国的网站上,发现了一个类库,可以实现类似的功能.试了一下它提供的demo,发现功能强大的超过了我的预期.在这里分享给大家,希望给大家提供一个思路吧.  翻译的有不准确的地方,请见谅. 大家先看看中…
首先,你在Eclispe开发环境中新建一个项目:然后,可以通过Eclispe项目管理工具把这个项目集成到你的app项目中.下面手册会手把手教你如何正确创建一个地图对象. 第一: 新建一个新的Anroid项目   第二:(注意项目细节) 设置项目名称 核对“Create new project in workspace”单选按钮是否选择 选择“Build Target” 检查和命名“Create activity” 设置“Min SDK Version”版本  注:其中Eclispe中的按钮或名词…
你可以使用以下几个方法: MapWidget.scrollMapTo(android.location.Location location); MapWidget.scrollMapTo(android.graphics.Point position); MapWidget.scrollToCurrentLocation(); MapWidget.jumpTo(android.location.Location location); MapWidget.jumpTo(android.graphi…
一般来说,可以使用以下几种方式来控制地图的放大/缩小 : 1. 使用控件底部的缩放按钮 2.双击控件 3.pinch手势 4.物理按键 :I键标识缩小  :O键表示放大.(只有设备具有物理按键才行) 当然,你也可以使用自己的按钮实现放大和缩小 缩小一个地图级别,调用: mapWidget.zoomIn(); 增加一个地图级别,调用: mapWiget.zoomOut(); 获取当前地图级别,调用: mapWidget.getZoomLevel(); 地图级别还可以在初始化MapWidget 时,…
使用切图工具创建不同名称的地图资源.然后将这些资源放置到assert文件夹内. 像下面这样: 在代码中,根据不同的地图名称,查找地图. map = new MapWidget(this, "map", initZoomLevel); or map = new MapWidget(this, "map2", initZoomLevel);…
这个很简单,想要显示或隐藏任意类型的地图对象,首先要对地图对象进行分类.不同类型的地图对象放置到不同的地图图层上,然后控制地图图层的显示/隐藏即可. 实例: Layer sportsLayer = mapWidget.getLayerById(SPORTS_LAYER); sportsLayer.setVisible(true); // Shows the layer sportsLayer.setVisible(false); // Hides the layer…
若显示当前用户位置,你需要执行以下步骤: 1.添加ACCESS_COARSE_LOCATION 和ACCESS_FINE_LOCATION权限在AndroidManifest.xml中 2.用mapWidget.setShowMyPosition(true)来显示当前用户的位置 得出的结果是,你应该看到地图上的位置标记: 如何改变位置指针指向的方式? 位置标记组成成分:圆圈指针.箭头指针.精确区域以及精确区域的边框.你可以改变标记的每个元素. 为了改变标记的每个元素,你需要执行以下步骤: 1.获…
为了将地图对象放置到某个特殊的地理位置上,你需要: 1. 创建地图对象 2.添加地图对象到图层(任何位置) 3. 移动该地图对象,使用 MapObject.moveTo(Location location) 方法 示例代码: private void addPOI() { Layer layer = map.getLayerById(SPORTS_LAYER); int objectId = 0; Drawable drawable = getResources().getDrawable(R.…
为了展示选中的点,你需要完成以下步骤: 1.创建或者获得一个已经存在的图层 2.创建代表选中点的地图对象 3.把地图对象添加到图层 创建新图层 使用以下代码片段创建图层 int COFFEE_SHOPS_LAYER = 1; Layer layer = mapWidget.createLayer(COFFEE_SHOPS_LAYER); 根据索引或者ID获得一个已经存在的图层 int COFFEE_SHOPS_LAYER = 1; Layer layer = mapWidget.getLayer…
地图资源可以通过Slicing Tool工具生成,教程如下: 1.打开Eclipse标准版4.3.2,以Java项目形式导入”slicingtool“项目,运行.(必须是eclipse4.3.2及以上版本,不然会少包而报错) 2.此时会新启一个eclipse,在新的里面widow-->show view-->mAppWidget-->Map Slicing Tool,打开窗口: 选择被切块格数大小(一般建议256格) 如果你想使用地图的GPS特点,填写校正数据 Export后,会得到一个…