首页 > 解决方案 > osmdroid 6.1.2:mapview 覆盖上的大量 draw() 调用

问题描述

我用 osmdroid 编写了一个地图应用程序,它使用了几个覆盖层、标准覆盖层(CopyrightOverlay、ScaleBarOverlay 等)以及自己的实现(例如,用于指北针)。所有这些类都包含一个构造函数和一个函数“draw()”。我发现每个绘图函数每秒都会被调用几次,即使是在静态条件下(没有应用缩放或滚动,没有调用 invalidate(),没有发生 android 生命周期事件)。我不明白,为什么会发生这种情况以及它有什么好处。

我的意思是,该应用程序运行良好,但在后台有一个恒定的 CPU 负载,稍微减慢了应用程序的速度。每秒更新几次版权声明有什么意义?

标签: overlaydrawandroid-mapviewosmdroid

解决方案


从 6.1.6 版开始,osmdroid 团队解决了这个问题。看这里


推荐阅读