收藏
回答

地图自定义点聚合在安卓手机上会闪出默认的聚合簇样式

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug 地图 点聚合 微信安卓客户端 8.0.7 2.19.2

一定出现的情况:

addMarkers时,会出现默认样式的聚合簇,稳定后才切回自定义样式;

removeMarkers时,地图上开始出现动画效果,聚合簇会变成默认样式,直至marker全部删除完毕。


偶尔出现的情况:

地图放大或缩小时,可能会出现部分聚合簇变成默认样式,稳定后才切回自定义样式;

removeMarkers时,marker上的label文字有可能会永远残留在地图上。

this.map.on('markerClusterCreate', (e) => {
	console.log('markerClusterCreate', e)
	const markers = e.clusters.map((cluster, index) => {
		const { center, clusterId, markerIds } = cluster
		return {
			...center,
			width: 53,
			height: 53,
			clusterId, // 必须
			iconPath: '/static/img/map/mapPoiIcon/clusterer.png',
			label: {
				content: markerIds.length + '',
				fontSize: 12,
				width: 50,
				height: 50,
				borderRadius: 25,
				textAlign: 'center',
				anchorX: -25, // 开发者工具与真机表现不同
				anchorY: -50
			}
		}
	})
	this.map.addMarkers({
		markers,
		clear: false,
		complete(res) {
			console.log('clusterCreate addMarkers', res)
		}
	})
})
回答关注问题邀请回答
收藏

1 个回答

  • Cjiang
    Cjiang
    2022-03-25

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),并详细描述下复现的流程。

    2022-03-25
    有用
    回复 4
    • 张宾
      张宾
      2022-03-28
      机型:VIVO U1 V1818A
      微信版本号:8.0.7
      系统版本号:Funtouch OS_9 Android8.1.0
      代码片段:https://developers.weixin.qq.com/s/Hk2iJ6mz7Tyl


      最明显的问题就是执行 removeMarkers 的时候,自定义的点聚合图标会变成微信默认的聚合图标,然后出现marker逐渐消失的动画,直到最后一直都是默认的聚合图标。


      有一个非常影响体验的问题,marker多了之后,addMarkers 会让所有测试的安卓机卡死一段时间,等渲染完毕才能重新操作。在开发者工具和IOS上就没有这个现象。


      还有一个问题,开发者工具中使用微信默认的聚合图标,点击图标没有任何反应,使用 removeMarkers 也删除不了。
      2022-03-28
      回复
    • Cjiang
      Cjiang
      2022-03-29回复张宾
      详细描述下复现的流程,并提供下复现的视频(上传至腾讯视频 https://v.qq.com
      2022-03-29
      回复
    • ′冯涛涛涛涛。
      ′冯涛涛涛涛。
      2023-08-21回复张宾
      后来这个问题解决了吗...  也遇到了同样问题...
      2023-08-21
      回复
    • 黄国铭💤
      黄国铭💤
      05-03回复Cjiang
      23年了还没解决这个问题。。大部份安卓机型都存在啊 还能不能修复了 这么容易复现的问题
      05-03
      回复
登录 后发表内容