我正在构建一个地图应用程序,通过ImgTileProvider
拉入切片。我想知道何时正确加载了切片,但ImgTileProvider.Options
所揭示的唯一方法是getUrl
功能,这有助于我知道 where 来获取图像瓦片,而不是,当返回时。
是否在每个图块/所有图块都已创建/呈现到页面后触发了一个事件?我注意到addListener
个实例有一个ImgTileProvider
函数,如果我知道在图像创建时触发了哪个事件,我会订阅它。
答案 0 :(得分:1)
所以,当我写这个问题时,出现了一个想法:为什么不检查来源?使用Chrome,我对map-render-display.js
文件进行了美化,并查找了通过addListener
函数添加的事件。我没有看到ImgTileProvider
的任何内容,但我发现其他几个提供商订阅response
事件。所以我在我的ImgTileProvider
实例上添加了一个事件监听器,它工作正常!以下是工作代码示例。
// A magic number representing the total number of tiles in the map.
var magicNumber = 22;
// Returns a new ImgTileProvider.
tileProvider = self.imgTileProvider();
tileProvider.addListener("response", function () {
magicNumber--;
if (magicNumber === 0) {
console.log("All tiles loaded");
}
});