700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Android高德地图实现自定义地图样式

Android高德地图实现自定义地图样式

时间:2021-09-10 19:25:24

相关推荐

Android高德地图实现自定义地图样式

现在的应用中很多地方都会用到地图这个控件,但是地图提供给我们的样式有时可能不是我们想要的样式,这时候就需要用到第三方地图的自定义样式。

本文已高德地图为例,其他地图可自定查看官方文档

官方文档地址链接: 开发 --> Android地图SDK -->开发指南 -->创建地图 -->自定义地图

1.申请高德地图账号

2.点击自定义地图

3.选择一个模块开始绘制自己想要的样式(如果免费模式不能满足您的需求,可自行选择付费版本)

4.保存之后发布地图样式 然后选择使用与分享

选择自己对应的sdk版本进行下载离线文件

下面开始正式使用此文件(关于地图的显示本文不做赘述,可自行查看官方文档),解压之后获取到两个文件(官网说是三个文件,但是我这里是两个文件,可能是因为我使用的是免费版的原因)

5.将文件放到项目中

复制两个文件放到res > assets(如果没有可以自行创建) 文件夹下

6.获取assets文件夹下的文件

private static byte[] getAssetsStyle(Context context){byte[] buffer1 = null;InputStream is1 = null;try {is1 = context.getResources().getAssets().open("style.data");int lenght1 = is1.available();buffer1 = new byte[lenght1];is1.read(buffer1);} catch (IOException e) {e.printStackTrace();}finally {try {if (is1!=null) {is1.close();}} catch (IOException e) {e.printStackTrace();}}return buffer1;}

7.为Amap设置此文件

public static void setCustomMap(Context context, AMap aMap){CustomMapStyleOptions customMapStyleOptions = new CustomMapStyleOptions();customMapStyleOptions.setEnable(true);customMapStyleOptions.setStyleData(getAssetsStyle(context));customMapStyleOptions.setStyleExtraData(getAssetsStyleExtra(context));aMap.setCustomMapStyle(customMapStyleOptions);}

以上就是大致实现方法,如有其他方法可留言联系我,大家一起共同探讨

注:高德地图在6.6.0版本以后,自定义地图使用方法进行了较大更新以前的方法很多都被弃用,而且设置无效。如要使用,可先升级到最新版本。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。