说明:
1.Android中通常使用地图应用都是通过使用Google Map的API,但是其地图需联网从Google地图服务器中获取地图数据。
2.由于项目需要使用自己的地图片作为地图数据,而且直接把地图文件存为本地文件,无需联网就可以使用,即为off line应用。
3.需要使用自己的Custom Map,并根据需要添加地图导航,定位标识等功能。
Custom Map
1.需要加入Cumstom Map的类库
2.使用Custom Map地图制作app,制作自定义的地图数据文件,需要图片文件、坐标数据。
3.加入自定义的功能
自定义地图定位处理原理:
1.根据指定位置的经纬度坐标在屏幕上显示自定义的标志内容
1)坐标转换,将经纬度转为屏幕上的坐标位置
a.将经纬度转换为在自定义图片上的xy坐标位置
b.将图片上的xy坐标转换为屏幕上的坐标位置
2)将在屏幕内的标志显示出来
a.检测转换后的屏幕坐标位置,即检测是否在屏幕内,将屏幕内的标志内容显示
b.获取自定义的标识的图像数据,即Bitmap对象,
c.在onDraw方法中在指定位置画出标识图像
2.实现地图上的自定义标志的点击事件
由于屏幕显示的标识对象,都是以图像的形式画出来的,所以无法实现点击事件。现在只能通过监听onTouch事件,计算点击的位置是否在执行的范围内,再执行事件处理方法。
3.实现导航位置的显示
a.同样要进行坐标转换,将导航位置的经纬度转为屏幕的坐标位置
b.判断在屏幕的位置,移动屏幕,使GPS位置移到屏幕中央,
c.画出导航的标识图像