地图组件的marker的label对象,ios和安卓表现出不同的定位方式?
发布于 4 年前 作者 dlu 12336 次浏览 来自 问答

场景是做一个地图聚合图标,需要用Marker的label显示聚合数量,需要居中显示。

重点在于textAlign属性,同样是center,在安卓中只是以anchor坐标为文字容器左上角坐标,但是无法设置容器的宽度,因此left,right和center的表现一致。

而在ios中,如果是left,则会以anchor坐标作为文字容器的右上角点,如果是right,会以anchor坐标作为文字容器的左上角点,如果是center,会以anchor坐标作为文字容器的上方居中点。

当我按如下规则设置,ios和安卓的表现如图所示:

//label对象属性如下:
{
content: v.length.toString(),
fontSize: 16,
padding: 0,
color: '#FFFFFF',
textAlign: 'center',//iOS与安卓表现不一致
anchorX: 0,
anchorY: 0,
borderWidth: 1,
borderColor: "#000000"
}

ios如下:

安卓如下:

可以看出,ios文本框居中,但是安卓文本框左上角坐标始终是经纬度的位置坐标。

这个问题已经出现很久了,希望wx官方尽快给出答复。

回到顶部