我尝试使用传单标签,并在几个页面上成功。我想使用相同的方法在另一个页面上显示标签,它用一个我不明白的模糊技术信息回复:
Uncaught TypeError: Cannot read property 'call' of undefined
at e.whenReady (leaflet.js:6)
at e.addLayer (leaflet.js:6)
at e.showLabel (leaflet.label-src.js:538)
at e.showLabel (leaflet.label-src.js:287)
at e._onMarkerAdd (leaflet.label-src.js:383)
at e.fire (leaflet.js:5)
at e._layerAdd (leaflet.js:6)
at e.whenReady (leaflet.js:6)
at e.addLayer (leaflet.js:6)
at e.onAdd (leaflet.js:7)
经过大量的研究后我发现leaflet.label已被弃用于Leaflet 1.0.3,这是有道理的,因为我们在标签正确显示的其他页面中使用较旧的传单版本,但在较新的传单版本上崩溃地图。 docs说我应该使用bindTooltip
代替bindLabel
,但我不知道如何使用OutputStream out = getContentResolver().openOutputStream(newFile.getUri());
InputStream in = new FileInputStream("/storage/emulated/0/beat.mp3");
File newFile = File("/storage/emulated/0/beat.mp3");
。我试图用标记上的一些内容来调用它,但它没有出现在地图上,我没有在生成的结构中找到它。
所以,我的问题如下:如何使用Leaflet 1.0.3的标签,它将被绑定到一个标记,并在翻译/缩放的情况下进行调整?
答案 0 :(得分:4)
Tooltip确实现在直接属于Leaflet主库。
请注意,默认情况下它仅在鼠标悬停时显示,但您可以使用permanent
选项使其始终可见。
marker.bindTooltip("Some tooltip content", {
permanent: true
});
示例:http://playground-leaflet.rhcloud.com/tiqo/1/edit?html,output