gpt4 book ai didi

java - 在 Android SDK 2.5 上尝试使用 SKAnnotations(紫色针标记类型)查看 map 时偶尔会看到黑色矩形覆盖 SKMap

转载 作者:太空狗 更新时间:2023-10-29 14:05:32 25 4
gpt4 key购买 nike

我们目前正在使用 Skobbler 2.5 构建 Android 导航应用程序。应用程序中的一个功能允许您沿着先前计算的路线放置注释。当 SKMap 在屏幕上可见或在背景中时,可以将注释放置在 map 上。

我们注意到,偶尔在 map 当前不可见时添加注释,然后继续并使 map 可见会导致黑色矩形出现在已添加注释的位置。

注释本身是使用已弃用的 .setImagePath() 方法添加的,但这是由于设置了一种变通方法,当将 map 缩小到小于以下的缩放级别时,可以使注释可见4.

这是当前如何添加注释的示例:

SKAnnotation annotation = new SKAnnotation(i++);
annotation.getLocation().setLongitude(result.longitude);
annotation.getLocation().setLatitude(result.latitude);
// annotation.setAnnotationType(SKAnnotation.SK_ANNOTATION_TYPE_PURPLE);
annotation.setMininumZoomLevel(2);
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
if (metrics.densityDpi < DisplayMetrics.DENSITY_HIGH) {
annotation.setImagePath(SKMaps.getInstance().getMapInitSettings().
getMapResourcesPath() + "/.Common/icon_greypin@2x.png");
// set the size of the image in pixel
annotation.setImageSize(128);
} else {
annotation.setImagePath(SKMaps.getInstance().getMapInitSettings().
getMapResourcesPath() + "/.Common/icon_greypin@3x.png");
// set the size of the image in pixels
annotation.setImageSize(256);
}
mapView.addAnnotation(annotation, SKAnimationSettings.ANIMATION_POP_OUT);

但由于某些原因, map 偶尔会出现这样的情况: enter image description here

通常,它应该看起来更像这样:

enter image description here

有没有人对这个问题有任何经验并且知道正确处理它的方法?或者我可能需要注意某种竞争条件?

感谢您对此事的任何帮助!基思

最佳答案

我必须查看您的所有项目才能获得详细答案。如果没有:

  • 本地图不可见时不要添加注释/可视元素,而是在“缓冲区”中设置更改并在 map 恢复时执行更改
  • imagePath API 已弃用,在下一次更新中我们将完全删除它。自定义 View API 提供更多控制并且更具可扩展性,因此我们将只支持该 API。您可以尝试将所有注释切换为使用自定义 View ,看看问题是否仍然重现
  • 您是否在您的应用中使用多个 map View ?如果是,请参阅:http://developer.skobbler.com/getting-started/android#sec033

关于java - 在 Android SDK 2.5 上尝试使用 SKAnnotations(紫色针标记类型)查看 map 时偶尔会看到黑色矩形覆盖 SKMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32639027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com