-
2021-05-26 15:32:25
放置Android工程下的assets文件夹,在assets文件夹里面创建了一个styleMap子文件夹。将里面的文件写到sd卡中。
写出文件代码:
try {
// 先获取系统默认的文档存放根目录
File parent_path = Environment.getExternalStorageDirectory();
File dir = new File(parent_path.getAbsoluteFile(), "data");
if(!dir.exists()){
dir.mkdir();
}
File file = new File(dir.getAbsoluteFile(), "style.data");
if(file.exists()){
return;
}
//读取数据文件
InputStream open = this.getResources().getAssets().open("styleMap/style.data");
file.createNewFile();
FileOutputStream fos = new FileOutputStream(file);
int len;
byte[] buf = new byte[1024];
while((len=open.read(buf))!=-1){
fos.write(buf,0,len);
}
fos.flush();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
在高德地图中指定你写出文件的路径。
String path=Environment.getExternalStoragePublicDirectory("data").getPath()+"/style.data"
//该方法在AMap类中提供
setCustomMapStylePath(path);
更多相关内容 -
高德地图自定义信息窗体样式
2021-08-25 16:15:57高德地图自定义信息窗体样式 -
高德地图自定义点聚合图片
2019-04-26 17:40:34Android 高德地图自定义点聚合marker图片及Overlay点击选中功能的代码实现及布局文件 -
高德地图自定义样式不生效 解决方案(web前端)
2022-01-11 10:48:26最近在使用高德地图自定义样式的时候,发现一个奇怪的问题:使用官网的样式可以生效,但使用自定义样式就死活不生效,如下所示 自定义地图 样式ID: 使用样式: 解决方案:如果后面接的是 样式id,必须加上...最近在使用高德地图自定义样式的时候,发现一个奇怪的问题:使用官网的样式可以生效,但使用自定义样式就死活不生效,如下所示
自定义地图 样式ID:
使用样式:
解决方案:如果后面接的是 样式id,必须加上安全密钥,就可以生效了。
key和安全密钥:
代码如下(React):
const ref = useRef<HTMLDivElement>(null); const [map, setMap] = useState<any>(); useMount(() => { // 配置安全密钥 window._AMapSecurityConfig = { securityJsCode: '安全密钥' }; AMapLoader.load({ key: 'key', // 申请好的Web端开发者Key,首次调用 load 时必填 version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15 plugins: [''], // 需要使用的的插件列表,如比例尺'AMap.Scale'等 }).then((AMap) => { if (ref.current) { setMap( new AMap.Map(ref.current, { resizeEnable: true, mapStyle: 'amap://styles/自定义样式id',//自定义样式id viewMode: '3D', // 是否为3D地图模式 zoom: 12, // 初始化地图级别 center: [114.06667, 22.61667], // 深圳市中心点位置 }), ); } }); });
不过这种方式(即安全密钥写在前端代码里)不安全,官网并不推荐。官网更推荐把安全密钥配置到服务器上,让服务器代理转发请求。如下图
-
高德地图自定义样式
2018-03-06 17:18:51首先,我们在高德地图sdk中下载自定义地图,并在build.gradle中引用。将下载的.data文件放入assets文件夹下。关键来了,如何读取自定义地图。private void setMapCustomStyleFile(Context context) { String style...首先,我们在高德地图sdk中下载自定义地图,并在build.gradle中引用。将下载的.data文件放入assets文件夹下。关键来了,如何读取自定义地图。
private void setMapCustomStyleFile(Context context) { String styleName = "mystyle_sdk_1507863834_0100.data"; FileOutputStream outputStream = null; InputStream inputStream = null; String filePath = null; try { inputStream = context.getAssets().open(styleName); byte[] b = new byte[inputStream.available()]; inputStream.read(b); filePath = context.getFilesDir().getAbsolutePath(); File file = new File(filePath + "/" + styleName); if (file.exists()) { file.delete(); } file.createNewFile(); outputStream = new FileOutputStream(file); outputStream.write(b); } catch (IOException e) { e.printStackTrace(); } finally { try { if (inputStream != null) inputStream.close(); if (outputStream != null) outputStream.close(); } catch (IOException e) { e.printStackTrace(); } } aMap.setCustomMapStylePath(filePath + "/" + styleName); aMap.setMapCustomEnable(true); aMap.showMapText(true); }
在oncreat()方法中,aMap = mMapView.getMap();这行代码之后即可。
.data文件位置如下
-
高德地图自定义地图样式
2019-10-15 16:29:14在高德地图开放平台官网的jsAPI中提供了自定义地图的方法: 其中官方提供了10个主题来给开发者们使用 但10个主题并不能满足所有场景,所以官方还提供了自定义地图样式的方法: (1)进入自定义页面,点击创建地图...在高德地图开放平台官网的jsAPI中提供了自定义地图的方法:
- 其中官方提供了10个主题来给开发者们使用
- 但10个主题并不能满足所有场景,所以官方还提供了自定义地图样式的方法:
(1)进入自定义页面,点击创建地图样式:
(2)选择一个与目标样式相近的基础模版然后点击「创建」按钮:
(3)在左边导航栏里选择需要改变样式的模块,比如:陆地,并打开取色板选择想要的颜色来更换掉
(4)样式修改完成之后,点击左上角「退出」键,随即进入自定义地图界面:
(5)点击想要使用的样式中的「发布」按钮,发布成功之后,点击「使用与分享」按钮
(6)可以复制上图中的样式ID来使用,也可以点击分享地图样式给其他账号,在项目中具体使用代码如下:
这里在引入高德地图的时候必须要使用自定义样式所在的账号的key才可以!比如我在账号A下新建的地图样式,就需要使用A的key,不然不会生效
//引入高德地图 <script src="https://webapi.amap.com/maps?v=1.4.15&key=你的key&plugin=Map3D,AMap.DistrictLayer,AMap.Scale,AMap.ToolBar"></script> //使用样式:在amap的配置项找到mapStyle, mapStyle: "amap://styles/你的样式ID",//这里样式ID,我这里就是fdb98ba86eaa2e61e2b4c054ebe4989d
到这里就结束了,搞定收工!
- 其中官方提供了10个主题来给开发者们使用
-
高德地图自定义infowindow
2018-04-28 13:16:43高德地图自定义infowindow,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, -
高德地图自定义地图apidemo
2018-06-07 14:45:22高德地图自定义地图apidemo,地图样式,标注样式,自定义窗体 -
Android之高德地图自定义样式
2018-07-31 08:28:58} 在高德地图中指定你写出文件的路径。 String path = Environment.getExternalStoragePublicDirectory("data").getPath()+"/style.data" // 该方法在AMap类中提供 setCustomMapStylePath(path); 注意:自地图SDK ... -
高德地图自定义地图样式失效
2022-05-02 10:19:05然后自定义样式就一直是失效的状态,找了一些资料说是高德地图2021年12月02日升级了,自定义的样式要配置安全密钥 jscode(开发环境下选择第二种方式配置安全密钥‘);这个步骤已做但还是无效,最终发现是因为自己的... -
vue项目使用高德地图自定义地图样式
2020-05-25 10:22:23注册账号并申请 Key 首先,注册开发者账号,成为高德开放平台开发者 登陆之后,在进入「应用管理」 页面「创建新应用」...为应用添加 Key 标题创建自定义地图 vue中在index.html中引入地图key ...使用自定义样式 ... -
高德地图自定义样式失效
2021-12-01 11:18:15高德地图加载的时候先是蓝屏再白屏然后出现地图,然后出现自定义样式,有时候是先出现白色的普通样式闪一下之后再出现自定义样式,有时候直接就是普通样式,自定义样式直接不出来了。问题很多,加载几次之后就会出现... -
高德地图 自定义marker
2022-04-19 14:21:55function AddPoint (arr) { let index = 1 + markerList.length // 序号 var content = '<... // 自定义marker var marker = new AMap.Marker({ content: content, position: arr,//位置 }) map.add(marke -
高德地图自定义创建地图
2021-05-12 09:32:39自定义样式 3、定义结束,点击发布 4、接下来点击使用自定义地图,会生成一串码 5、点击复制,在地图初始化调用这个就可以了 var map = new AMap.Map('container', { zoom: 4, mapStyle: 'amap://styles... -
高德地图自定义贴图图层
2022-03-25 16:45:46核心代码 // 背景图 const imageLayerr = new...//是否显示标注 mapStyle: "amap://styles/darkblue",//地图样式 layers: [AMap.createDefaultLayer(), imageLayerr, imageLayerr2, imageLayer3],//叠加图层 }); 效果图 -
高德地图开发自定义地图样式
2020-01-10 16:46:58自定义样式 3、定义结束,点击发布 4、接下来点击使用自定义地图,会生成一串码 5、点击复制,在地图初始化调用这个就可以了 var map = new AMap.Map('container', { zoom: 4, mapStyle: 'amap://styl... -
高德地图自定义图层
2020-10-17 14:02:13高德地图利用canvas绘制图层首先在html文件引入高德api添加canvas图层初始化canvas坐标转换在canvas绘制区域和文字添加图层到地图总结 首先在html文件引入高德api <script src=... -
(android地图开发) 高德地图自定义对话框
2021-05-26 15:32:41type.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { //showDialog方法触发Activity的onCreateDialog(){可以自定义对话框样式} showDialog(0); } }); } 运行截图: -
高德地图自定义地图实例
2021-05-12 14:00:02Document 获取地图级别与中心点坐标 当前级别:11 当前中心点:121.498586,31.239637 -
高德地图-自定义地图未生效
2019-07-23 10:23:45高德地图自定义地图教程 我按照上面链接的教程,在自定义地图平台进行创建、编辑、发布后,取得地图样式ID,然后再地图初始化时,设置自定义地图,发现并没有生效 原因:key生成的不对,之前选择的是“Web服务”,... -
高德地图自定义点聚合样式Android
2018-07-31 11:26:34写了Android高德地图的点聚合功能 不废话:直接上代码 private ClusterOverlay mClusterOverlay; private int clusterRadius = 100; private void dianjuhePipeout() { List<ClusterItem> items... -
vue中使用高德地图原生api解决自定义样式不生效问题
2022-01-12 11:30:09最近在做北京供水系统的时候需要用到地图展示水厂,但是需要做自定义样式,但是官方样式可以,自己的自定义样式不管咋都不行 解决 官方给出解决方法,附上官方连接:... -
高德地图自定义弹窗内容
2020-05-17 21:41:50使用vue2.x来实现高德地图自定义弹窗内容,可以通过一个按钮来切换不同的样式风格,即改变弹窗内容样式。 分析 高德地图官网为开发者提供了自定义弹窗内容的例子,见这里 。官方提供的方式是Dom操作,即createElement... -
【高德地图进阶】--- 自定义地图
2021-12-26 14:52:27步骤:登录高德地图–>进入控制台–>自定义地图 可以直接创建地图,也可以在模板基础上进行修改 可以控制颜色,显隐 ,具体根据需求. 也可以添加纹理,但是需要开通会员. 发布地图 点击右上角的发布按钮 ... -
vue 高德地图 自定义信息窗体内的事件交互 以及自定义事件
2021-06-01 17:59:301.引入高德地图(在vue的index.html) ...--1 引入高德地图 --> <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.3&key=78aa70d0ee0ea038fc8269ab834f2bfa"></script> -
android高德地图自定义marker,关于高德地图 自定义Marker使用自己的XMl布局的操作...
2021-06-03 02:36:23加载的是网络图片 因为之前有人说自定义的marker设置icon时不能使用网络的图片 自己写的xml里可以设置各种样式的Marker 总结 如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。 本图文内容... -
高德地图自定义Marker
2020-07-23 10:20:081.添加Marker 的方法 // 添加多边形的边界点marker private void addPolygonMarker(LatLng latlng) { // markerOption.position(latlng); // Marker marker = mAMap.addMarker... //小猫 自定义 Marker .. -
高德地图 自定义marker+信息窗口
2021-06-19 15:11:26首先在index.html引入高德地图,你的key。其中plugin后面拼接是是所依赖的插件。版本不同,有些写发也不同,望注意;这里我使用2.0版本。 <script src="https://webapi.amap.com/maps?v=2.0&key= yourKey &... -
解决自定义高德地图不生效问题
2022-04-22 15:53:20问题来源 最近在做项目的过程中需要使用地图来绘制区域地图,但是UI要求图层中的地名少一点这样页面看上更加干净。在请教了组长之后,想到了两种办法: ...高德地图的自定义样式,在高德地图的控制台中,