overlay - osmdroid 6.1.2:mapview 覆盖上的大量 draw() 调用
问题描述
我用 osmdroid 编写了一个地图应用程序,它使用了几个覆盖层、标准覆盖层(CopyrightOverlay、ScaleBarOverlay 等)以及自己的实现(例如,用于指北针)。所有这些类都包含一个构造函数和一个函数“draw()”。我发现每个绘图函数每秒都会被调用几次,即使是在静态条件下(没有应用缩放或滚动,没有调用 invalidate(),没有发生 android 生命周期事件)。我不明白,为什么会发生这种情况以及它有什么好处。
我的意思是,该应用程序运行良好,但在后台有一个恒定的 CPU 负载,稍微减慢了应用程序的速度。每秒更新几次版权声明有什么意义?
解决方案
从 6.1.6 版开始,osmdroid 团队解决了这个问题。看这里
推荐阅读
- naming-conventions - Trie 代码中的 pCrawl 变量指的是什么?
- python - 如何修复“权限匹配查询不存在”。在 Django
- r - 麻烦矢量化 UDF 以允许 mutate() 更改数据帧
- java - com.sun.beans.TypeResolver#fixGenericArray 方法的含义是什么?
- python - 从预训练模型进行微调后,TensorFlow 模型中的输出节点名称丢失
- c# - Azure SpatialAnchors in Xamarin
- ios - 在密码文本输入期间是否有键盘大小更改的通知处理程序?
- vim - 以 JSON 格式列出给定文件夹的文件
- javascript - 我正在使用 react-native-elements 创建一个复选框列表。如何一次只检查一个框?
- java - 为什么responsebody注解返回String会导致ajax错误?